Part Number Hot Search : 
FU8102Z5 DRH3D SIR850DP M1300 8HC05 CT273MT K2414 XF001
Product Description
Full Text Search
 

To Download AM29BDD160GT54DKI Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  july 2003 the following document specifies spansion memory products that are now offered by both advanced micro devices and fujitsu. although the document is marked with the name of the company that orig- inally developed the specification, these products will be offered to customers of both amd and fujitsu. continuity of specifications there is no change to this datasheet as a result of offering the device as a spansion product. any changes that have been made are the result of normal datasheet improvement and are noted in the document revision summary, where supported. future routine revisions will occur when appropriate, and changes will be noted in a revision summary. continuity of ordering part numbers amd and fujitsu continue to support existing part numbers beginning with ?am? and ?mbm?. to order these products, please use only the ordering part numbers listed in this document. for more information please contact your local amd or fujitsu sales office for additional information about spansion memory solutions. am29bdd160g data sheet publication number 24960 revision d amendment 3 issue date february 2, 2005 for new designs, s29cd016g supersedes am29bdd160g and is the factory-recommended migration path for this device. please refer to the s29cd016g datasheet for specifications and ordering infor- mation.
this page left intentionally blank.
data sheet 1 publication# 24960 rev: d amendment/ +3 issue date: february 2, 2005 refer to amd?s website (www.amd.com) for the latesst information. am29bdd160g 16 megabit (1 m x 16-bit/512 k x 32-bit), cmos 2.5 volt-only burst mode, dual boot, simultaneous read/write flash memory distinctive characteristics architectural advantages simultaneous read/write operations ? data can be continuously read from one bank while executing erase/program functions in other bank. (?40c to 85c, 56 mhz and below only) ? zero latency between read and write opera - tions ? two bank architecture: 75%/25% user-defined x16 or x32 data bus dual boot block ? top and bottom boot in the same device flexible sector architecture ? eight 8 kbytes, thirty 64 kbytes, and eight 8 kbytes sectors manufactured on 0.17 m process technology secsi (secured silicon) sector (256 bytes) ? current version of device has 64 kbytes; future versions will have 256 bytes ? factory locked and identifiable: 16 bytes for secure, random factory electronic serial num - ber; remainder may be customer data pro - grammed by amd ? customer lockable: can be read, programmed, or erased just like other sectors. once locked, data cannot be changed programmable burst interface ? interface to any high performance processor ? modes of burst read operation: linear burst: 4 double words (x32), 8 words (x16) and dou - ble words (x32), and 32 words (x16) with wrap around single power supply operation ? optimized for 2.5 to 2.75 volt read, erase, and program operations compatible with jedec standards (jc42.4) ? pinout and software compatible with single-power-supply flash standard performance characteristics high performance read access ? initial/random access time as fast as 54 ns ? burst access time as fast as 9 ns for ball grid array package ultra low power consumption ? burst mode read: 90 ma @ 66 mhz max ? program/erase: 50 ma max ? standby mode: cmos: 60 a max minimum 1 million write cycles guaranteed per sector 20 year data retention at 125c versatile i/o tm control ? device generates data output voltages and tol - erates data input voltages as determined by the voltage on the v io pin ? 1.65 v to 2.75 v compatible i/o signals software features persistent sector protection ? a command sector protection method to lock combinations of individual sectors and sector groups to prevent progra m or erase operations within that sector (requires only v cc levels) password sector protection ? a sophisticated sector protection method to lock combinations of individual sectors and sector groups to prevent program or erase op - erations within that sector using a user-defin - able 64-bit password supports common flash interface (cfi) unlock bypass program command ? reduces overall programming time when issu - ing multiple program command sequences data# polling and toggle bits ? provides a software method of detecting pro - gram or erase operation completion hardware features program suspend/resume & erase sus - pend/resume ? suspends program or erase operations to allow reading, programming, or erasing in same bank hardware reset (reset#), ready/busy# (ry/by#), and write protect (wp#) inputs acc input ? accelerates programming time for higher throughput during system production package options ? 80-pin pqfp ? 80-ball fortified bga
2 am29bdd160g general description t he am29bdd160 is a 16 megabit, 2.5 volt-only sin - gle power supply burst mode flash memory device. the device can be configured for either 1,048,576 words in 16-bit mode or 524,288 double words in 32-bit mode. the device can also be programmed in standard eprom programmers. the device offers a configurable burst interface to 16/32-bit micropro - cessors and microcontrollers. to eliminate bus contention, each device has sepa - rate chip enable (ce#), write enable (we#) and output enable (oe#) controls. additional control in - puts are required for synchronous burst operations: load burst address valid (adv#), and clock (clk). each device requires only a single 2.5 or 2.6 volt power supply (2.5 v to 2.75 v) for both read and write functions. a 12.0-volt v pp is not required for program or erase operations, al - though an acceleration pin is available if faster programming performance is required. the device is entirely command set compatible with the jedec single-power-supply flash standard . the software command set is compatible with the command sets of the 5 v am29f and 3 v am29lv flash families. commands are written to the com - mand register using standard microprocessor write timing. register contents serve as inputs to an inter - nal state-machine that controls the erase and programming circuitry. write cycles also internally latch addresses and data needed for the program - ming and erase operations. reading data out of the device is similar to reading from other flash or eprom devices. the unlock bypass mode facilitates faster pro - gramming times by requiring only two write cycles to program data instead of four. the simultaneous read/write architecture pro - vides simultaneous operation by dividing the memory space into two banks. the device can begin programming or erasing in one bank, and then si - multaneously read from the other bank, with zero latency. this releases the system from waiting for the completion of program or erase operations. see simultaneous read/write operations overview and restrictions on page 13. the device provides a 256-byte secsi? (secured silicon) sector with an one-time-programmable (otp) mechanism. in addition, the device features several levels of sec - tor protection, which can disable both the program and erase operations in certain sectors or sector groups: persistent sector protection is a com - mand sector protection method that replaces the old 12 v controlled protection method; password sec - tor protection is a highly sophisticated protection method that requires a password before changes to certain sectors or sector groups are permitted; wp# hardware protection prevents program or erase in the two outermost 8 kbytes sectors of the larger bank. the device defaults to the persistent sector protec - tion mode. the customer must then choose if the standard or password protection method is most de - sirable. the wp# hardware protection feature is always available, independent of the other protection method chosen. the versatile i/o? (v ccq ) feature allows the output voltage generated on the device to be determined based on the v io level. this feature allows this device to operate in the 1.8 v i/o environment, driving and receiving signals to and from other 1.8 v devices on the same bus. in addition, inputs and i/os that are driven ex - ternally are capable of handling 3.6 v. the host system can detect whether a program or erase operation is complete by observing the ry/by# pin, by reading the dq7 (data# polling), or dq6 (toggle) status bits . after a program or erase cycle has been completed, the device is ready to read array data or accept another command. the sector erase architecture allows memory sec - tors to be erased and reprogrammed without affecting the data contents of other sectors. the de - vice is fully erased when shipped from the factory. hardware data protection measures include a low v cc detector that automatically inhibits write operations during power transitions. the password and software sector protection feature disables both program and erase opera - tions in any combination of sectors of memory. this can be achieved in-system at v cc level. the program/erase suspend/erase resume feature enables the user to put erase on hold for any period of time to read data from, or program data to, any sector that is not selected for erasure. true background erase can thus be achieved. the hardware reset# pin terminates any opera - tion in progress and resets the internal state machine to reading array data. the device offers two power-saving features. when addresses have been stable for a specified amount of time, the device enters the automatic sleep mode . the system can also place the device into the standby mode . power consumption is greatly re - duced in both these modes. amd?s flash technology combines years of flash memory manufacturing experience to produce the highest levels of quality, reliability and cost effective - ness. the device electrically erases all bits within a sector simultaneously via fowler-nordheim tunnel - ling. the data is programmed using hot electron injection.
am29bdd160g 3 table of contents product selector guide. . . . . . . . . . . . . . . . . . . . . . 3 block diagram . . . . . . . . . . . . . . . . . . . . . . . . . 3 block diagram of simultaneous operation circuit . . . . . . . . . . . . . . . . . . . . . 4 connection diagram . . . . . . . . . . . . . . . . . . . . . . . . 5 80-ball fortified bga . . . . . . . . . . . . . . . . . . . . . . . 6 special package handling instructions ............................................ 6 pin configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . 7 logic symbols ...................................................................... 7 x16 mode ...................................................................................................7 x32 mode ...................................................................................................7 ordering information ................................................................8 device bus operations . . . . . . . . . . . . . . . . . . . . . . 9 table 1. device bus operation ......................................................10 versatile i/o? (vio) control .................................................11 word/double word configuration ................................................ 11 requirements for reading array data ........................................... 11 simultaneous read/write operations overview and restrictions .........................................................................11 restrictions ............................................................................................. 11 table 2. table 2. bank assignment for boot bank sector devices ................................. 11 simultaneous read/write operations with zero latency ...............................................................................11 table 3. top boot bank select ..................... 12 table 4. bottom boot bank select .................. 12 writing commands/command sequences ......................12 accelerated program and erase operations ................................ 12 autoselect functions ........................................................................... 12 automatic sleep mode (asm) ..............................................12 standby mode ............................................................................12 reset#: hardware reset pin ...............................................13 output disable mode ..............................................................13 autoselect mode ......................................................................13 table 5. am29bdd160 autoselect codes (high voltage method) ................................................................................. 14 asynchronous read operation (non-burst) ................. 14 figure 1. asynchronous read operation ................................... 14 synchronous (burst) read operation .................................15 linear burst read operations ..............................................15 table 6. 16-bit and 32-bit linear and burst data order ....... 15 ce# control in linear mode ............................................................ 16 adv# control in linear mode ........................................................ 16 reset# control in linear mode ..................................................... 16 oe# control in linear mode ........................................................... 16 ind/wait# operation in linear mode ....................................... 16 table 7. valid configuration register bit definition for ind/ wait# .................................................................................................. 17 figure 2. end of burst indicator (ind/wait#) timing for linear 8-word burst operation .......................................... 17 burst access timing control ................................................ 18 initial burst access delay control ................................................. 18 table 8. burst initial access delay ............................................... 18 figure 3. initial burst delay control ........................................... 18 burst clk edge data delivery ............................................. 19 burst data hold control ................................................................... 19 asserting reset# during a burst access ................................... 19 configuration register ........................................................... 19 table 9. configuration register definitions .............................. 19 table 10. configuration register after device reset ............ 20 initial access delay configuration ................................................. 20 sector protection ..................................................... 20 sector and sector groups ................................................................20 persistent sector protection ........................................................... 20 password sector protection ............................................................ 20 wp# hardware protection .............................................................. 20 persistent sector protection ................................................ 21 persistent protection bit (ppb) ........................................................ 21 persistent protection bit lock (ppb lock) ................................... 21 dynamic protection bit (dyb) ........................................................ 21 table 11. sector protection schemes .......................................... 22 persistent sector protection mode locking bit ............ 22 password protection mode ................................................. 22 password and password mode locking bit .................... 22 64-bit password ................................................................................... 23 write protect (wp#) .............................................................23 secsi? (secured silicon) sector protection .....................23 secsi sector protection bit ...................................................23 persistent protection bit lock ............................................ 24 hardware data protection .................................................. 24 low vcc write inhibit ..................................................................... 24 write pulse ?glitch? protection .................................................... 24 logical inhibit ........................................................................................ 24 power-up write inhibit .................................................................... 24 vcc and vio power-up and power-down sequencing ......... 24 table 12. sector addressees for top boot sector devices ................................................................................................. 24 table 13. sector addresses for bottom boot sector devices ................................................................................................. 26 common flash memory interface (cfi). . . . . . . 28 table 14. cfi query identification string ................................... 28 table 15. cfi system interface string ..........................................28 table 16. cfi device geometry definition ............................... 29 table 17. cfi primary vendor-specific extended query ................................................................................................... 29 command definitions ...............................................................31 reading array data in non-burst mode ...........................31 reading array data in burst mode .....................................31 read/reset command ...........................................................32 autoselect command ............................................................32 program command sequence .............................................32 accelerated program command ........................................32 unlock bypass command sequence ..................................33 figure 4. program operation ....................................................... 33 unlock bypass entry command ..........................................33 unlock bypass program command ...................................33 unlock bypass chip erase command ........................................... 34 unlock bypass cfi command ......................................................... 34 chip erase command ............................................................34 sector erase command .........................................................34 figure 5. erase operation ............................................................. 35 sector erase and program suspend command .............35 sector erase and program suspend operation mechanics ...................................................................................35 table 18. allowed operations during erase/program suspend .................................................................................................35 sector erase and program resume command ..............36 configuration register read command ..........................36
4 am29bdd160g configuration register write command ........................36 common flash interface (cfi) command ......................36 secsi sector entry command ...............................................38 password program command .............................................38 password verify command ..................................................38 password protection mode locking bit program command ..................................................................................38 persistent sector protection mode locking bit program command ................................................................39 secsi sector protection bit program command ...........39 ppb lock bit set command .................................................39 dyb write command ...........................................................39 password unlock command ...............................................39 ppb program command ....................................................... 40 dyb write ............................................................................... 40 ppb lock bit set ..................................................................... 40 dyb status ................................................................................ 40 ppb lock bit status ................................................................ 40 non-volatile protection bit program and erase flow ............................................................................................ 40 table 19. memory array command definitions (x32 mode) ................................................................... 42 table 20. sector protection command definitions (x32 mode) ................................................................... 43 table 21. memory array command definitions (x16 mode) .................................................................... 45 table 22. sector protection command definitions (x16 mode) .................................................................... 47 write operation status . . . . . . . . . . . . . . . . . . . . 49 dq7: data# polling ................................................................ 49 ry/by#: ready/busy# ........................................................... 49 figure 6. data# polling algorithm .............................................. 50 dq6: toggle bit i ................................................................... 50 dq2: toggle bit ii .................................................................. 50 reading toggle bits dq6/dq2 ............................................51 dq5: exceeded timing limits ..............................................51 figure 7. toggle bit algorithm ...................................................... 51 table 23. write operation status ............................................... 52 absolute maximum ratings . . . . . . . . . . . . . . . . . 53 figure 8. maximum negative overshoot waveform ............ 53 figure 9. maximum positive overshoot waveform............... 53 operating ranges ...........................................................53 dc characteristics . . . . . . . . . . . . . . . . . . . 54 table 24. cmos compatible ........................................................ 54 dc characteristics (continued) . . . . . . . . 55 zero power flash ....................................................................55 figure 10. icc1 current vs. time (showing active and automatic sleep currents) .................. 55 figure 11. typical icc1 vs. frequency ............................................. 55 test conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 figure 12. test setup ....................................................................... 56 table 25. test specifications ......................................................... 56 key to switching waveforms .............................56 switching waveforms ...............................................56 figure 13. input waveforms and measurement levels .................................................................................................... 56 ac characteristics . . . . . . . . . . . . . . . . . . . . . . . . 57 vcc and vio power up ........................................................57 figure 14. vcc and vio power-up diagram............................ 57 asynchronous read operations ........................................ 58 burst mode read .....................................................................59 figure 15. conventional read operations timings................. 60 figure 16. burst mode read (x32 mode).................................... 60 figure 17. asynchronous command write timing.................. 61 figure 18. synchronous command write/read timing ......... 61 hardware reset (reset#) ................................................... 62 figure 19. reset timing.................................................................... 63 figure 20. wp# timing ................................................................... 63 erase/program operations .................... 64 figure 21. program operation timings ..................................... 65 figure 22. chip/sector erase operation timings ................... 65 figure 23. back-to-back cycle timing ........................................ 66 figure 24. data# polling timings (during embedded algorithms) ........................................................................................ 66 figure 25. toggle bit timings (during embedded algorithms) ......................................................................................... 67 figure 26. dq2 vs. dq6 for erase and erase suspend operations .......................................................................................... 67 figure 27. synchronous data polling timing/toggle bit timing............................................................................................. 68 figure 28. sector protect/unprotect timing diagram.......... 68 alternate ce# controlled erase/program operations ................................................................................. 69 figure 29. alternate ce# controlled write operation timings ................................................................................................. 70 erase and programming performance . . . . . . . . . 71 latchup characteristics .........................................71 pqfp and fortified bga pin capacitance ....71 data retention ................................................................71 physical dimensions . . . . . . . . . . . . . . . . . . . . . . . 72 pqr080-80-lead plastic quad flat package ....................72 physical dimensions . . . . . . . . . . . . . . . . . . . . . . . 73 laa 080-80-ball fortified ball grid array (13 x 11 mm) .....................................................................73 revision summary. . . . . . . . . . . . . . . . . . . . . . . . . 74
am29bdd160g 5 product selector guide note: the 54d, 64c, and 65a speed options are tested and guaranteed to operate only at the 66 mhz, 56mhz, and 40mhz frequencies respectively. operation and other frequencies is not warranted. block diagram part number am29bdd160g standard voltage range: v cc = 2.5 ? 2.75 v synchronous/burst or asynchronous speed option (clock rate) 54d (66 mhz) 64c (56 mhz) 65a (40 mhz) max initial/asynchronous access time, ns (t acc ) 54 64 67 max burst access delay (ns) 9 fbga/9.5 pqfp 10 fbga/10 pqfp 17 max clock rate (mhz) 66 56 40 min initial clock delay (clock cycles) 3 3 2 max ce# access, ns (t ce ) 58 69 71 max oe# access, ns (t oe ) 20 28
6 am29bdd160g block diagram of simultaneous operation circuit
am29bdd160g 7 connection diagram
8 am29bdd160g 80-ball fortified bga special package handling instructions special handling is required for flash memory prod - ucts in molded packages (bga). the package and/or data integrity may be compromised if the package body is exposed to temperatures above 150c for pro-longed periods of time.
am29bdd160g 9 pin configuration logic symbols a?1 = least significant address bit for the 16- bit data bus, and selects between the high and low word. a ?1 is not used for the 32-bit mode (word# = vih). a0?a18 = 19-bit address bus for 16 mb device. a9 supports 12 v autoselect inputs. dq0?dq31 = 32-bit data inputs/outputs/float word# = selects 16-bit or 32-bit mode. when word# = vih, data is output on dq31?dq0. when word# = vil, data is output on dq15?dq0. ce# = chip enable input. this signal is asynchronous relative to clk for the burst mode. oe# = output enable input. this signal is asynchronous relative to clk for the burst mode. we# = write enable. this signal is asynchronous relative to clk for the burst mode. v ss = device ground nc = pin not connected internally ry/by# = ready/busy output and open drain. when ry/by# = vih, the device is ready to accept read operations and commands. when ry/by# = vol, the device is either executing an embedded algorithm or the device is executing a hardware reset operation. clk = clock input that can be tied to the system or microprocessor clock provides the fundamental timing and internal operating frequency. adv# = load burst address input. indicates that the valid address is present on the address inputs. ind# = end of burst indicator for finite bursts only. ind is low when the last word in the burst sequence is at the data outputs. wait# = provides data valid feedback only when the burst length is set to continuous. wp# = write protect input. when wp# = vol, the two outermost boot block sector in the 75% bank are write protected regardless of other sector protection configurations. acc = acceleration input. when taken to 12 v, program and erase operations are accelerated. when not used for acceleration, acc = vss to vcc. v io (v ccq ) = output buffer power supply (1.65 v to 2.75 v) v cc = chip power supply (2.5 v to 2.75 v) reset# = hardware reset input x16 mode x32 mode
10 am29bdd160g ordering information the order number (valid combination) is formed by the following: valid combinations valid combinations list configurations planned to be supported in volume for this device. consult the local amd sales office to confirm availability of specific valid combinations and to check on newly released combinations. am29bdd160 g t 54 d pb e temperature range i = industrial (?40 c to +85 c) f = industrial (?40 c to +85 c) with pb-free package e=extended (-40 c to +125 c) k=extended (-40 c to +125 c) with pb-free package package type k = 80-pin plastic quad flat package (pqfp) pqr080 pb = 80-ball fortified ball grid array (fortified bga) 1.0 mm pitch, 13 x 11 mm package (laa080) clock rate a=40 mhz c=56 mhz d=66 mhz speed option see product selector guide and valid combinations boot code sector architecture t = top sector b = bottom sector process technology g=0.17 m device number/description am29bdd160 16 megabit (2 m x 16-bit/512 k x 32-bit) cmos 2.5 volt-only burst mode dual boot, simultaneous operation flash memory valid combinations for pqfp packages am29bdd160gt54d am29bdd160gb54d ki, ke, kf, kk am29bdd160gt64c am29bdd160gb64c am29bdd160gt65a am29bdd160gb65a valid combinations for fortified bga packages order number package marking am29bdd160gt54d am29bdd160gb54d pbi, pbe bd160gt54d bd160gb54d i, e, f, k am29bdd160gt64c am29bdd160gb64c bd160gt64c bd160gb64c am29bdd160gt65a am29bdd160gb65a bd160gt65a bd160gb65a
am29bdd160g 11 device bus operations this section describes the requirements and use of the device bus operations, which are initiated through the internal command register. the com - mand register itself does not occupy any addressable memory location. the register is composed of latches that store the commands, along with the ad - dress and data information needed to execute the command. the contents of the register serve as in - puts to the internal state machine. the state machine outputs dictate the function of the device. table 1 lists the device bus operations, the inputs and control levels they require, and the resulting output. the following subsections describe each of these operations in further detail.
12 am29bdd160g legend: l = logic low = v il , h = logic high = v ih , x = don?t care. note: 1. dq31?dq16 are high z when word# = v il 2. when word# = v il , dq31-dq16 are floating 3. wp# controls the two outermost sectors of the top boot block or the two outermost sectors of the bottom boot block. 4. dq0 reflects the sector ppb (or sector group ppb) and dq1 reflects the dyb 5. addresses are a0:a18 for the x32 mode and a?1:a18 for x16 mode. table 1. device bus operation operations ce# oe# we# reset# clk adv# addresses (note 1) data (dq0-dq31 autoselect manufacturer code l l h h x x a9=v id , a6=l, a1=l, a0=l 0000001h (note 2) read cycle 1 l l h h x x a9=v id , a6=l, a1=l, a0=h 000007eh (note 2) read cycle 2 l l h h x x a9=v id , a7-a0=0eh 0000008h read cycle 3 l l h h x x a9=v id , a7-a0=0fh to p b o o t bl o c k 0000000h bottom boot block 0000001h read l h l h x x a in d out write l h l h x x a in d in standby (ce#) l x x h x x x high z output disable l h h h x x high z high z reset x x x l x x x high z ppb protection status (note 4) l l h h x x sector address, a9=v id a7-a0=02h 00000001h (protected) a6 = h 00000000h (unprotect) a6 = l burst read operations load starting burst address l x h h a in x advance burst to next address with appropriate data presented on the data bus l l h h h x burst data out terminate current burst read cycle h x h h x x high z terminate current burst read cycle with reset# x x h l x x x high z terminate current burst read cycle; start new burst read cycle l h h h a in x autoselect device code
am29bdd160g 13 versatile i/o? (v io ) control the versatile i/o (v io ) control allows the host system to set the voltage levels that the device generates at its data outputs and the voltages tolerated at its data inputs to the same voltage level that is asserted on the v io pin. the output voltage generated on the device is determined based on the v io (v ccq ) level. a v io of 1.65?1.95 volts is targeted to provide for i/o tolerance at the 1.8 volt level. a v cc and v io of 2.5?2.75 volts makes the de - vice appear as 2.5 volt-only. address/control signals are 3.6 v tolerant with the exception of clk. word/double word configuration the word# pin controls whether the device data i/ o pins operate in the word or double word configura - tion. if the word# pin is set at v ih , the device is in double word configuration, dq31?dq0 are active and controlled by ce# and oe#. if the word# pin is set at v il , the device is in word configuration, and only data i/o pins dq15?dq0 are active and controlled by ce# and oe#. the data i/o pins dq31?dq16 are tri-stated. requirements for reading array data to read array data from the outputs, the sys - tem must drive the ce# and oe# pins to v il . ce# is the power control and selects the de - vice. oe# is the output control and gates array data to the output pins. we# should remain at v ih . the internal state machine is set for reading array data upon device power-up, or after a hardware re - set. this ensures that no spurious alteration of the memory content occurs during the power transition. no command is necessary in this mode to obtain array data. standard microprocessor read cycles that assert valid addresses on the device address inputs produce valid data on the device data outputs. the device remains enabled fo r read access until the command register contents are altered. address access time (t acc ) is the delay from sta - ble addresses to valid output data. the chip enable access time (t ce ) is the delay from stable addresses and stable ce# to valid data at the output pins. the output enable access time (t oe ) is the delay from the falling edge of oe# to valid data at the output pins (assuming the ad - dresses have been stable for at least t acc ?t oe time and ce# has been asserted for at least t ce ?t oe time). see ?reading array data? for more information. refer to the ac read operations table for tim - ing specifications and to figure 15 for the timing diagram. i cc1 in the dc characteristics table represents the active current specification for reading array data. simultaneous read/write operations overview and restrictions overview simultaneous operation is an advances functionality providing enhanced speed and flexibility with mini - mum overhead. simultaneous operation does this by allowing an operation to be executed (embedded op - eration) in a bank (busy bank), then going to the other bank (non-busy bank ) and performing desired operations. the bdd160?s simultaneous operation has been op - timized for applications that could most benefit from this capability. these applications store code in the big bank, while storing data in the small bank. the best example of this is when a sector erase opera - tion (as an embedded operation) in the small (busy) bank, while performing a burst/synchronous read operation in the big (non-busy) bank. restrictions the bdd160?s simultaneous operation is tested by executing an embedded operation in the small (busy) bank while performing other operations in the big (non-busy) bank. however, the opposite case is neither tested nor valid. that is, it is not tested by executing an embedded operation in the big (busy) bank while performing other operations in the small (non-busy) bank. see table 2 bank assignment for boot bank sector devices. table 2. bank assignment for boot bank sector devices also see table 18, ?allowed operations during erase/ program suspend,? on page 38. also see table 12, ?sector addresses for top boot sector devices,? on page 29 and see table 13, ?sector addresses for bottom boot sector devices,? on page 30. simultaneous read/write operations with zero latency the device is capable of reading data from one bank of memory while programming or erasing in the other bank of memory. an erase operation may also be suspended to read from or program to another lo - cation within the same bank (except the sector being erased). refer to the dc characteristics table for si - multaneous read/write operations are valid for both the main flash memory array and the secsi otp sec - tor. simultaneous operation is disabled during the cfi and password program/verify operations. ppb top boot sector devices bottom boot sector devices bank 1 small bank big bank bank 2 big bank small bank
14 am29bdd160g pro-gram/erase operations and the password unlock operation permit reading data from the large (75%) bank while reading the operation status of these commands from the small (25%) bank. table 3. top boot bank select table 4. bottom boot bank select writing commands/command sequences to write a command or command sequence (which includes programming data to the de - vice and erasing sectors of memory), the system must drive we# and ce# to v il , and oe# to v ih . for program operations, in the x32-mode the device accepts program data in 32-bit words and in the x16 mode the device accepts program data in 16-bit words. the device features an unlock bypass mode to fa - cilitate faster programming. once the device enters the unlock bypass mode, only two write cycles are required to program a word or byte, instead of four. the sector erase and program suspend command section has details on programming data to the de - vice using both standard and unlock bypass command sequences. an erase operation can erase one sector, multiple sectors, or the entire device. tables 12 and 13 indi - cate the address space that each sector occupies. a ?sector address? consists of the address bits required to uniquely select a sector. the ?command defini - tions? section has details on erasing a sector or the entire chip, or suspending/resuming the erase oper - ation. after the system writes the autoselect command se - quence, the device enters the autoselect mode. the system can then read autoselect codes from the in - ternal register (which is separate from the memory array) on dq7?dq0. standard read cycle timing ap - plies in this mode. refer to the ?autoselect mode? section for more information. i cc2 in the dc characteristics table represents the active current specification for erase or program modes. the ac characteristics section contains timing speci - fication tables and timing diagrams for erase or program operations. accelerated program and erase operations the device offers accelerated program/erase opera - tions through the acc pin. when the system asserts v hh (12v) on the acc pin, the device automatically enters the unlock bypass mode. the system may then write the two-cycle unlock bypass program command sequence to do accelerated programming. the device uses the higher voltage on the acc pin to accelerate the operation. a sector that is being pro - tected with the wp# pin will still be protect during accelerated program or erase. note that the acc pin must not be at v hh during any operation other than accelerated programming, or device damage may result. autoselect functions if the system writes the autoselect command se - quence, the device enters the autoselect mode. the system can then read autoselect codes from the in - ternal register (which is separate from the memory array) on dq7?dq0. standard read cycle timings apply in this mode. refer to the autoselect mode and autoselect command sequence sections for more in - formation. automatic sleep mode (asm) t he automatic sleep mode minimizes flash device energy consumption. while in asynchronous mode, the device automatically enables this mode when ad - dresses remain stable for t acc + 60 ns. the automatic sleep mode is independent of the ce#, we# and oe# control signals. standard address ac - cess timings provide new data when addresses are changed. while in sleep mode, output data is latched and always available to the system. while in syn - chronous mode, the device automatically enables this mode when either the first active clk level is greater than t acc or the clk runs slower than 5 mhz. note that a new burst operation is required to pro - vide new data. i cc8 in the ?dc characteristics? section of page 53 represents the automatic sleep mode current specifi - cation. standby mode when the system is not responding or writing to the device, it can place the device in the standby mode. in this mode, current consumption is greatly re - duced, and the outputs are placed in the high impedance state, independent of the oe# input. the device enters the cmos standby mode when the ce# and reset# inputs are both held at vcc 0.2 v. the device requires standard access time (t ce ) for read access, before it is ready to read data. if the device is deselected during erasure or pro - gramming, the device draws active current until the operation is completed. i cc5 in the ?dc characteristics? section on page 53 represents the standby current specification. bank a18:a17 bank 1 00 bank 2 01, 1x bank a18 bank 1 0x, 10 bank 2 11
am29bdd160g 15 caution : entering the standby mode via the re - set# pin also resets the device to the read mode and floats the data i/o pins. furthermore, entering i cc7 during a program or erase operation will leave erroneous data in the address locations being oper - ated on at the time of the reset# pulse. these locations require updating after the device resumes standard operations. refer to the ?reset#: hard - ware reset pin? section for further discussion of the reset# pin and its functions . reset#: hardware reset pin the reset# pin is an active low signal that is used to reset the device under any circumstances. a logic ?0? on this pin forces the device out of any mode that is currently executing back to the reset state. the reset# pin may be tied to the system reset cir - cuitry. a system reset would thus also reset the device. to avoid a potentia l bus contention during a system reset, the device is isolated from the dq data bus by tri-stating the data output pins for the dura - tion of the reset pulse. all pins are ?don?t care? during the reset operation. if reset# is asserted during a program or erase op - eration, the ry/by# pin remains low until the reset operation is internally complete. this action requires between 1 s and 7s for either chip erase or sector erase. the ry/by# pin can be used to determine when the reset operation is complete. otherwise, allow for the maximum reset time of 11 s. if re - set# is asserted when a program or erase operation is not executing (ry/by# = ?1?), the reset operation will complete within 500 ns. since the am29bdd160 is a simultaneous operation device the user may read a bank after 500 ns if the bank was in the read/ reset mode at the time reset# was asserted. if one of the banks was in the middle of either a program or erase operation when reset# was asserted, the user must wait 11 s before accessing that bank. asserting reset# during a program or erase opera - tion leaves erroneous data stored in the address locations being operated on at the time of device re - set. these locations need updating after the reset operation is complete. see figure 19 for timing spec - ifications. asserting reset# active during v cc a nd v io power- up is required to guarantee proper device initializa - tion until v cc and v io have reached their steady state voltages. output disable mode see table 1 device bus operation for oe# operation in output disable mode. autoselect mode the autoselect mode provides manufacturer and de - vice identification, and sector protection verification, through identifier codes output on dq7?dq0. this mode is primarily intended for programming equip - ment to automatically match a device to be programmed with its corresponding programming al - gorithm. however, the autoselect codes can also be accessed in-system through the command register. when using programming equipment, the au - toselect mode requires v id on address pin a9. address pins a6, a1, and a0 must be as shown in table 12 (top boot devices) or table 13 (bot - tom boot devices). in addition, when verifying sector protection, the sector address must ap - pear on the appropriate highest order address bits (see tables 11 and 12). see table 5 shows the remaining address bits that are don?t care. when all necessary bits have been set as re - quired, the programming equipment may then read the corresponding identifier code on dq7? dq0. to access the autoselect codes in-system, the host system can issue the autoselect command via the command. this method does not re - quire v id . see ?command definitions? for details on using the autoselect mode.
16 am29bdd160g table 5. am29bdd160 autoselect codes (high voltage method) l = logic low = v il , h = logic high = v ih , sa = sector address, x = don?t care. note: the autoselect codes may also be accessed in-system via command sequences. see tables 18 and 20. asynchronous read operation (non- burst) the device has two control functions which must be satisfied in order to obtain data at the outputs. ce# is the power control and should be used for device selection. oe# is the output control and should be used to gate data to the output pins if the device is selected. the device is power-up in an asynchronous read mode. in the asynch ronous mode the device has two control functions which must be satisfied in order to obtain data at the outputs. ce# is the power control and should be used for device selection. oe# is the output control and should be used to gate data to the output pins if the device is selected. address access time (t acc ) is equal to the delay from stable addresses to valid output data. the chip en - able access time (t ce ) is the delay from the stable addresses and stable ce# to valid data at the output pins. the output enable access time is the delay from the falling edge of oe# to valid data at the out - put pins (assuming the addresses have been stable for at least t acc ?t oe time). 6. note: operation is shown for the 32-bit data bus. for the 16-bit data bus, a-1 is required. figure 1. asynchronous read operation description ce# oe# we# a18 to a11 a10 a9 a8 a7 a6 a5 to a4 a3 a2 a1 a0 dq7 to dq0 manufacturer id : amd l l h x x v io x x l x x x l l 0001h autoselect device code read cycle 1 l l h x x v io x l l x l l l h 007eh read cycle 2 l l h x x v io x l l l h h h l 0008h read cycle 3 l l h x x v io x l l l h h h h 0000h (top boot block) 0001h (bottom boot block) ppb protection status l l h sa x v io x l l l l l h l 0000h (unprotected) 0001h (protected) ce# clk adv# a0-a18 dq0-dq31 oe# we# ind/wait#
am29bdd160g 17 synchronous (burst) read operation the am29bdd160 is capable of performing burst read operations to improve total system data throughput. the device is available in three burst modes of operation: linear and burst mode. 2, 4 and 8 double word (x32) and 4 and 8 word (x16) ac - cesses are configurable as either sequential burst accesses. 16 and 32 word (x16) accesses are only configurable as linear burst accesses. additional op - tions for all burst modes include initial access delay configurations (2?16 clks) device configuration for burst mode operation is accomplished by writing the configuration register with the desired burst config - uration information. once the configuration register is written to enable burst mode operation, all subse - quent reads from the array are returned using the burst mode protocols. like the main memory access, the secsi sector memory is accessed with the same burst or asynchronous timing as defined in the con - figuration register. however, the user must recognize that continuous burst operations past the 256 byte secsi boundary returns invalid data. burst read operations occur only to the main flash memory arrays. the configuration register and pro - tection bits are treated as single cycle reads, even when burst mode is enabled. read operations to these locations results in the data remaining valid while oe# is at v il , regardless of the number of clk cycles applied to the device. linear burst read operations linear burst read mode reads either 4, 8, 16, or 32 words (1 word = 16 bits), depending upon the con - figuration register option. if the device is configured with a 32 bit interface (word# = v ih ), the burst ac - cess is comprised of 4 clocked reads for 8 words and 16 clocked reads for 32 words (see table 6 for all valid burst output sequences). the number of clocked reads is doubled when the device is config - ured in the 16-bit data bus mode (word# = v il ). the ind/wait# pin transitions active (v il ) during the last transfer of data during a linear burst read before a wrap around, indicating that the system should initiate another adv# to start the next burst access. if the system continues to clock the device, the next access wraps around to the starting address of the previous burst access. the ind/wait# signal remains inactive (floating) when not active. see table 6 for a complete 32 and 16 bit data bus inter - face order. 16 and 32 word options are restricted to sequential burst accesses, only. table 6. 16-bit and 32-bit linear and burst data order (sheet 1 of 2) data transfer sequence (independent of the word# pin) output data sequence (initial access address) (x16) two linear data transfers, (x32 only) 0-1 (a0 = 0) 1-0 (a0 = 1) four linear data transfers 0-1-2-3 (a0:a-1/a1-a0 = 00) 1-2-3-0 (a0:a-1/a1-a0 = 01) 2-3-0-1 (a:a-1/a1-a0 = 10) 3-0-1-2 (a0:a-1/a1-a0 = 11) eight linear data transfers 0-1-2-3-4-5-6-7 (a1:a-1a2-a0 = 000) 1-2-3-4-5-6-7-0 (a1:a-1/a2-a0 = 001) 2-3-4-5-6-7-0-1 (a1:a-1/a2-a0 = 010) 3-4-5-6-7-0-1-2 (a1:a-1/a2-a0 = 011) 4-5-6-7-0-1-2-3 (a1:a-1/a2-a0 = 100) 5-6-7-0-1-2-3-4 (a1:a-1/a2-a0 = 101) 6-7-0-1-2-3-4-5 (a1:a-1/a2-a0 = 110) 7-0-1-2-3-4-5-6 (a1:a-1/a2-a0 = 111)
18 am29bdd160g ce# control in linear mode the ce# (chip enable) pin enables the am29bdd160 during read mode operations. ce# must meet the required burst read setup times for burst cycle initiation. if ce# is taken to v ih at any time during the burst linear or burst cycle, the device immediately exits the burst sequence and floats the dq bus and ind/wait# signal. restarting a burst cycle is accomplished by taking ce# and adv# to v il . adv# control in linear mode t he adv# (address valid) pin is used to initiate a linear burst cycle at the clock edge when ce# and adv# are at v il and the device is configured for ei - ther linear burst mode operation. a burst access is initiated and the address is latched on the first rising clk edge when adv# is active or upon a rising adv# edge, whichever occurs first. if the adv# sig - nal is taken to v il prior to the end of a linear burst sequence, the previous address is discarded and subsequent burst transfers are invalid until adv# transitions to v ih before a clock edge, which initiates a new burst sequence. reset# control in linear mode the reset# pin immediately halts the linear burst access when taken to v il . the d q data bus an d ind/wait# signal float. additionally, the configura - tion register contents are reset back to the default condition where the device is placed in asynchronous access mode. oe# control in linear mode the oe# (output enable) pin is used to enable the linear burst data on the dq data bus and the ind/ wait# pin. de-asserting the oe# pin to v ih during a burst operation floats the data bus and the ind/ wait# pin. however, the device will continue to op - erate internally as if the burst sequence continues until the linear burst is complete. the oe# pin does not halt the burst sequence, this is accomplished by either taking ce# to v ih or re-issuing a new adv# pulse. the dq bus and ind/ wait# signal remain in the float state until oe# is taken to v il . ind/wait# operation in linear mode the ind/wait#, or end of burst indicator signal (when in linear modes), informs the system that the last address of a burst sequence is on the dq data bus. for example, if a 4-word linear burst access is enabled using a 16-bit dq bus (word# = v il ), the ind/wait# signal transitions active on the fourth access. if the same scenario is used, but instead the 32-bit dq bus is enabled, the ind/wait# signal transitions active on the second access. the ind/ wait# signal has the same delay and setup timing as the dq pins. also, the ind/wait# signal is con - trolled by the oe# signal. if oe# is at v ih , the ind/ wait# signal floats and is not driven. if oe# is at v il , the ind/wait# signal is driven at v ih until it transitions to v il indicating the end of burst se - quence. the ind/wait# signal timing and duration is (see ?configuration register? for more informa - tion). the following table lists the valid combinations of the configuration register bits that impact the ind/wait# timing. sixteen linear data transfers (x16 only) 0-1-2-3-4-5-6-7-8-9-a-b-c-d-e-f (a2:a-1/ a3-a0 = 0000) 1-2-3-4-5-6-7-8-9-a-b-c-d-e-f-0 (a2:a-1/ a3-a0 = 0001) 2-3-4-5-6-7-8-9-a-b-c-d-e-f-0-1 (a2:a-1/ a3-a0 = 0010) 3-4-5-6-7-8-9-a-b-c-d-e-f-0-1-2 (a2:a-1/ a3-a0 = 0011) 4-5-6-7-8-9-a-b-c-d-e-f-0-1-2-3 (a:a-1/ a3-a0 = 0100) 5-6-7-8-9-a-b-c-d-e-f-0-1-2-3-4 (a2:a-1/ a3-a0 = 0101) 6-7-8-9-a-b-c-d-e-f-0-1-2-3-4-5 (a2:a-1/ a3-a0 = 0110) 7-8-9-a-b-c-d-e-f-0-1-2-3-4-5-6 (a2:a-1/ a3-a0 = 0111) 8-9-a-b-c-d-e-f-0-1-2-3-4-5-6-7 (a2:a-1/ a3-a0 = 1000) 9-a-b-c-d-e-f-0-1-2-3-4-5-6-7-8 (a2:a-1/ a3-a0 = 1001) a-b-c-d-e-f-0-1-2-3-4-5-6-7-8-9 (a2:a-1/ a3-a0 = 1010) b-c-d-e-f-0-1-2-3-4-5-6-7-8-9-a (a2:a-1/ a3-a0 = 1011) c-d-e-f-0-1-2-3-4-5-6-7-8-9-a-b (a2:a-1/ a3-a0 = 1100) d-e-f-0-1-2-3-4-5-6-7-8-9-a-b-c (a2:a-1/ a3-a0 = 1101) e-f-0-1-2-3-4-5-6-7-8-9-a-b-c-d (a2:a-1/ a3-a0 = 1110) f-0-1-2-3-4-5-6-7-8-9-a-b-c-d-e (a2:a-1/ a3-a0 = 1111) thirty-two linear data transfers 0-1-2-3-4-5-6-7-8-9-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v (a3:a-1 = 00000) 1-2-3-4-5-6-7-8-9-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-0 (a3:a-1 = 00001) : u-v-0-1-2-3-4-5-6-7-8-9-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t (a3:a-1 = 11110) v-0-1-2-3-4-5-6-7-8-9-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u (a3:a-1 = 11111) table 6. 16-bit and 32-bit linear and burst data order (sheet 2 of 2)
am29bdd160g 19 note: operation is shown for the 32-bit data bus. for a 16-bit data bus, a-1 is required. figure shown with 3-clk initial access delay configuration, linear address, 4-doubleword burst, output on rising clk edge, data hold for 1-clk, ind/wait# as - serted on the last transfer before wrap-around. figure 2. end of burst indicator (ind/wait#) timing for linear 8-word burst operation table 7. valid configuration register bit definition for ind/wait# doc wc cc definition 0 0 1 ind/wait# = v il for 1-clk cycle, active on last transfer, driven on rising clk edge 0 1 1 ind/wait# = v il for 1-clk cycle, active on second to last transfer, driven on rising clk edge
20 am29bdd160g burst access timing control in addition to the ind/wait# signal control, burst controls exist in the control register for initial access delay, delivery of data on the clk edge, and the length of time data is held. initial burst access delay control the am29bdd160 contains options for initial access delay of a burst access. the initial access delay has no effect on asynchronous read operations. burst initial access delay is defined as the number of clock cycles that must elapse from the first valid clock edge after adv# assertion (or the rising edge of adv#) until the first valid clk edge when the data is valid. the burst access is initiated and the address is latched on the first rising clk edge when adv# is active or upon a rising adv# edge, whichever comes first. (see table 8 describes the initial access delay configurations.) if the clock configuration bit in the control register is set to falling edge (cr6 = 0), the definition remains the same for the initial delay set - ting withe the exception that data is valid after the falling edge. figure 3. initial burst delay control notes: 1. burst access starts with a rising clk edge and when adv# is active. 2. configurations register 6 is set to 1 (cr6 = 1). burst starts and data outputs on the rising clk edge. 3. cr [13-10] = 1 or three clock cycles 4. cr [13-10] = 2 or four clock cycles 5. cr [13-10] = 3 or five clock cycles table 8. burst initial access delay cr13 cr12 cr11 cr10 initial burst access (clk cycles) 54d, 64c, 65a 0 0 0 0 2 0 0 0 1 3 0 0 1 0 4 0 0 1 1 5 0 1 0 0 6 0 1 0 1 7 0 1 1 0 8 0 1 1 1 9
am29bdd160g 21 burst clk edge data delivery the am29bdd160 is capable of delivering data on either the rising or falling edge of clk. to deliver data on the rising edge of clk, bit 6 in the control register (cr6) is set to 1. to deliver data on the fall - ing edge of clk, bit 6 in the control register is cleared to 0. the default configuration is set to the rising edge. burst data hold control the device is capable of holding data for one clks. the default configuration is to hold data for one clk and is the only valid state. asserting reset# during a burst access if reset# is asserted low during a burst access, the burst access is immediately terminated and the de - vice defaults back to asynchronous read mode. refer to reset#: hardware reset pin for more information on the reset# function. configuration register the am29bdd160 contains a configuration register for configuring read accesses. the configuration register is accessed by the configuration register read and the configuration register write com - mands. the configuration register does not occupy any addressable memory location, but rather, is ac - cessed by the configuration register commands. the configuration register is readable any time, how - ever, writing the configuration register is restricted to times when the embedded algorithm? is not ac - tive. if the user attempts to write the configuration register while the embedded algorithm? is active, the write operation is ignored and the contents of the configuration register remain unchanged. the configuration register is a 16 bit data field which is accessed by dq15?dq0. data on dq31?dq16 is ignored during a write operation when word# = v il . during a read operation, dq31?dq16 returns all zeroes. table 9 shows the configuration register. also, configuration register reads operate the same as autoselect command reads. when the command is issued, the bank address is latched along with the command. reads operations to the bank that was specified during the configuration register read command return configuration register contents. read operations to the other bank re - turn flash memory data. either bank address is permitted when writing the configuration reg - ister read command. table 9. configuration register definitions cr15 cr14 cr13 cr12 cr11 cr10 cr9 cr8 rm reserved iad3 iad2 iad1 iad0 doc wc cr7 cr6 cr5 cr4 cr3 cr2 cr1 cr0 bs cc reserved reserved reserved bl2 bl1 bl0 configuration register cr15 = read mode (rm) 0 = synchronous burst reads enabled 1 = asynchronous reads enabled (default) cr14 = reserved for future enhancements these bits are reserved for future use. set these bits to ?0?. cr13?cr10 = initial burst access delay configuration (iad3-iad0) speed options 54d, 64c, 65a: 0000 = 2 clk cycle initial burst access delay 0001 = 3 clk cycle initial burst access delay 0010 = 4 clk cycle initial burst access delay 0011 = 5 clk cycle initial burst access delay 0100 = 6 clk cycle initial burst access delay 0101 = 7 clk cycle initial burst access delay 0110 = 8 clk cycle initial burst access delay 0111 = 9 clk cycle initial burst access delay?default cr9 = data output configuration (doc) 0 = hold data for 1-clk cycle?default 1 = reserved
22 am29bdd160g initial access delay configuration the frequency configuration informs the device of the number of clocks that must elapse after adv# is driven active before data is available. this value is determined by the input frequency. sector protection the am29bdd160 features several levels of sector protection, which can disable both the program and erase operations in certain sectors or sector groups sector and sector groups the distinction between sectors and sector groups is fundamental to sector protection. sector are individ - ual sectors that can be individually sector protected/ un-protected. these are the outermost 4 kword boot sectors, that is, sa0 to sa7 and sa38 to sa45. see tables 11 and 12. sector groups are a collection of three or four adja - cent 32 kword sectors. for example, sector group sg8 is comprised of sector sa8 to sa10. when any sector in a sector group is protected/unprotected, every sector in that group is protection/unprotected. see tables 11 and 12. persistent sector protection a command sector protection method that replaces the old 12 v controlled protection method. password sector protection a highly sophisticated protection method that re - quires a password before changes to certain sectors or sector groups are permitted wp# hardware protection a write protect pin that can prevent program or erase to the two outermost 8 kbytes sectors in the 75% bank all parts default to operate in the persistent sector protection mode. the customer must then choose if the persistent or password protection method is most desirable. there are two one-time programma - ble non-volatile bits that define which sector protection method will be used. if the customer de - cides to continue using the persistent sector protection method, driven active before data will be available. this value is determined by the input clock frequency. they must set the persistent sector protection mode locking bit . this will perma - nently set the part to operate only using persistent sector protection. if the customer decides to use the password method, they must set the password mode locking bit . this will permanently set the part to operate only us ing password sector protec - tion. it is important to remember that setting either the persistent sector protection mode locking bit or the password mode locking bit permanently selects the protection mode. it is not possible to switch between the two methods once a locking bit has been set. it is important that one mode is explicitly selected when the device is first pro - cr8 = ind/wait# configuration (wc) 0 = ind/wait# asserted during delay?default 1 = ind/wait# asserted one data cycle before delay cr7 = burst sequence (bs) 0 = reserved 1 = linear burst order?default cr6 = clock configuration (cc) 0 = reserved 1 = burst starts and data output on rising clock edge?default cr5?cr3 = reserved for future enhancements (r) these bits are reserved for future use. set these bits to ?0.? cr2?cr0 = burst length (bl2?bl0) 000 = reserved, burst accesses disabled (asynchronous reads only) 001 = 64 bit (8-byte) burst data transfer - x16 and x32 linear 010 = 128 bit (16-byte) burst data transfer - x16 and x32 linear 011 = 256 bit (32-byte) burst data transfer - x16 linear only and x32 linear 100 = 512 bit (64-byte) burst data transfer - x16 linear only - default 101 = reserved, burst accesses disabled (asynchronous reads only) 110 = reserved, burst accesses disabled (asynchronous reads only) 111 = reserved table 10. configuration register after device reset cr15 cr14 cr13 cr12 cr11 cr10 cr9 cr8 rm reserve iad3 iad2 iad1 iad0 doc wc 1 0 0 1 1 1 0 0 cr7 cr6 cr5 cr4 cr3 cr2 cr1 cr0 bs cc reserve reserve reserve bl2 bl1 bl0 1 1 0 0 0 1 0 0
am29bdd160g 23 grammed, rather than relying on the default mode alone. this is so that it is not possible for a system program or virus to later set the password mode locking bit, which would cause an unexpected shift from the default persistent sector protection mode into the password protection mode. the wp# hardware protection feature is always available, independent of the software managed pro - tection method chosen. persistent sector protection the persistent sector protection method replaces the old 12 v controlled protection method while at the same time enhancing flexibility by providing three different sector protection states: persistently locked ?a sector is protected and cannot be changed. dynamically locked ?the sector is protected and can be changed by a simple command unlocked ?the sector is unprotected and can be changed by a simple command persistent protection bit (ppb) a single persistent (non-volatile) protection bit is as - signed to a maximum of four sectors (see the sector address tables for specific sector protection group - ings). all 8 kbyte boot-block sectors have individual sector persistent protection bits (ppbs) for greater flexibility. each ppb is individually modifiable through the ppb write command . note: if a ppb requires erasure, all of the sector ppbs must first be preprogrammed prior to ppb eras - ing. all ppbs erase in parallel, unlike programming where individual ppbs are programmable. it is the responsibility of the user to perform the preprogram - ming operation. otherwise, an already erased sector ppbs has the potential of being over-erased. there is no hardware mechanism to prevent sector ppbs over-erasure. persistent protection bit lock (ppb lock) a global volatile bit. when set to ?1?, the ppbs can - not be changed. when cleared (?0?), the ppbs are changeable. there is only one ppb lock bit per de - vice. the ppb lock is cleared after power-up or hardware reset. there is no command sequence to unlock the ppb lock. dynamic protection bit (dyb) a volatile protection bit is assigned for each sector. after power-up or hardware reset, the contents of all dybs is ?0?. each dyb is individually modifiable through the dyb write command. when the parts are first shipped, the ppbs are cleared, the dybs are cleared, and ppb lock is de - faulted to power up in the cleared state ? meaning the ppbs are changeable. when the device is first powered on the dybs power up cleared (sectors not protected). the protection state for each sector is determined by the logical or of the ppb and the dyb related to that sector. for the sectors that have the ppbs cleared, the dybs control whether or not the sector is protected or unpro - tected. by issuing the dyb write command sequences, the dybs will be set or cleared, thus placing each sector in the protected or unprotected state. these are the so-called dynamic locked or unlocked states. they are called dynamic states be - cause it is very easy to switch back and forth between the protected and unprotected conditions. this allows software to easily protect sectors against inadvertent changes yet does not prevent the easy removal of protection when changes are needed. the dybs maybe set or cleared as often as needed. the ppbs allow for a more static, and difficult to change, level of protection. the ppbs retain their state across power cycles because they are non-vol - atile. individual ppbs are set with a command but must all be cleared as a group through a complex se - quence of program and erasing commands. the ppbs are limited to 100 erase cycles. the ppb lock bit adds an additional level of protec - tion. once all ppbs are programmed to the desired settings, the ppb lock may be set to ?1?. setting the ppb lock disables all program and erase commands to the non-volatile ppbs. in effect, the ppb lock bit locks the ppbs into their current state. the only way to clear the ppb lock is to go through a power cycle. system boot code can determine if any changes to the ppb are needed e.g. to allow new system code to be downloaded. if no changes are needed then the boot code can set the ppb lock to disable any further changes to the ppbs during system operation. the wp# write protect pin adds a final level of hard - ware protection to the two outermost 8 kbytes sectors in the 75% bank. when this pin is low it is not possible to change the contents of these two sec - tors. it is possible to have sectors that have been persis - tently locked, and sectors that are left in the dynamic state. the sectors in the dynamic state are all unprotected. if there is a need to protect some of them, a simple dyb write command sequence is all that is necessary. the dyb write command for the dynamic sectors switch the dybs to signify protected and unprotected, respectively. if there is a need to change the status of the persistently locked sectors, a few more steps are required. first, the ppb lock bit must be disabled by either putting the device through a power-cycle, or hardware reset. the ppbs can then be changed to reflect the desired settings. setting the ppb lock bit once again will lock the ppbs, and the device operates normally again. note: to achieve the best protection, it?s recom - mended to execute the ppb lock bit set command early in the boot code, and protect the boot code by holding wp# = v il .
24 am29bdd160g table 11 contains all possible combinations of the dyb, ppb, and ppb lock relating to the status of the sector. in summary, if the ppb is set, and the ppb lock is set, the sector is protected and the protection can not be removed until the next power cycle clears the ppb lock. if the ppb is cleared, the sector can be dy - namically locked or unlocked. the dyb then controls whether or not the sector is protected or unpro - tected. if the user attempts to program or erase a protected sector, the device ignores the command and returns to read mode. a program command to a protected sector enables status polling for approximately 1 s before the device returns to read mode without hav - ing modified the contents of the protected sector. an erase command to a protected sector enables status polling for approximately 50 s after which the de - vice returns to read mode without having erased the protected sector. the programming of the dyb, ppb, and ppb lock for a given sect or can be verified by writing a dyb/ppb/ ppb lock verify command to the device. persistent sector protection mode locking bit like the password mode locking bit, a persistent sec - tor protection mode locking bit exists to guarantee that the device remain in software sector protection. once set, the persistent sector protection locking bit prevents programming of the password protection mode locking bit. this guarantees that an unautho - rized user password protection mode the password sector protection mode method allows an even higher level of security than the persistent sector protection mode. there are two main differ - ences between the persistent sector protection and the password sector protection mode: when the device is first powered on, or comes out of a reset cycle, the ppb lock bit set to the locked state , rather than cleared to the unlocked state. the only means to clear the ppb lock bit is by writ - ing a unique 64-bit password to the device. the password sector protection method is otherwise identical to the persistent sector protection method. a 64-bit password is the only additional tool utilized in this method. the password is stored in a one-time programma - ble (otp) region of the flash memory. once the password mode locking bit is set, the password is permanently set with no means to read, program, or erase it. the password is used to clear the ppb lock bit. the password unlock command must be written to the flash, along with a password. the flash device internally compares the given password with the pre-programmed password. if they match, the ppb lock bit is cleared, and the ppbs can be altered. if they do not match, the flash device does nothing. there is a built-in 2 s delay for each ?password check.? this delay is intended to thwart any efforts to run a program that tries all possible combinations in order to crack the password. password and password mode locking bit in order to select the password sector protection scheme, the customer must first program the pass - word. one method of choosing a password would be to correlate it to the unique electronic serial number (esn) of the particular flash device. another method could generate a database where all the passwords are stored, each of which correlates to a serial num - ber on the device. each esn is different for every flash device; therefore each password should be dif - ferent for every flash device. while programming in the password region, the customer may perform password verify operations. once the desired password is programmed in, the customer must then set the password mode locking bit. this operation achieves two objectives: it permanently sets the device to operate using the password protection mode. it is not possible to reverse this function. it also disables all further commands to the pass - word region. all program, and read operations are ignored. both of these objectives are important, and if not carefully considered, may lead to unrecoverable er - rors. the user must be sure that the password protection method is desired when setting the pass - word mode locking bit. more importantly, the user must be sure that the password is correct when the password mode locking bit is set. due to the fact that read operations are disabled, there is no means to verify what the password is afterwards. if the password is lost after setting the password mode locking bit, there will be no way to clear the ppb lock bit. table 11. sector protection schemes dyb ppb ppb lock sector state 0 0 0 unprotected?ppb and dyb are changeable 0 0 1 unprotected?ppb not changeable, dyb is changeable 0 1 0 protected?ppb and dyb are changeable 1 0 0 1 1 0 0 1 1 protected?ppb not changeable, dyb is changeable 1 0 1 1 1 1
am29bdd160g 25 the password mode locking bit, once set, prevents reading the 64-bit password on the dq bus and fur - ther password programming. the password mode locking bit is not erasable. once password mode locking bit is programmed, the persistent sector protection locking bit is disabled from programming, guaranteeing that no changes to the protection scheme are allowed. 64-bit password the 64-bit password is located in its own memory space and is accessible through the use of the pass - word program and verify commands (see password verify command ). the password function works in conjunction with the password mode locking bit, which when set, prevents the password verify com - mand from reading the contents of the password on the pins of the device. write protect (wp#) the device features a hardware protection op - tion using a write protect pin that prevents programming or erasing, regardless of the state of the sector?s persistent or dynamic pro - tection bits. the wp# pin is associated with the two outermost 8kbytes sectors in the 75% bank. the wp# pin has no effect on any other sector. when wp# is taken to v il , programming and erase operations of the two outermost 8 kbytes sectors in the 75% bank are disabled. by taking wp# back to v ih , the two outermost 8 kbytes sectors are enabled for program and erase operations, depending upon the status of the individual sector persistent or dynamic pro - tection bits. if either of the two outermost sectors persistent or dynamic protection bits are programmed, program or erase operations are inhibited. if the sector persistent or dy - namic protection bits are both erased, the two sectors are available for programming or eras - ing as long as wp# remains at v ih . the user must hold the wp# pin at either v ih or v il during the entire program or erase operation of the two outermost sectors in the 75% bank. secsi? (secured silicon) sector protection the secsi sector is a 256-byte flash memory area that is either programmable at the customer or by amd at the request of the customer. the secsi sec - tor entry command enables the host system to address the secsi sector for programming or read - ing. the secsi sector address range is 00000h? 0003fh for the top boot block configuration and 7ffc0h?7ffffh for the bottom boot block configura - tion. address range 00 040 h?00 7f f h for t he top boot block and 7f800h?7ffbfh return invalid data when addressed with the secsi sector enabled. unlike previous flash memory devices, the am29bdd160 allows simultaneous operation while the secsi sector is enabled. however, there are a number of restrictions associated with simultaneous operation and device operation when the secsi sec - tor is enabled: the secsi sector is not available for reading while the password unlock, any ppb program/erase op - eration, or password programming are in progress. reading to any location in the small (25%) sector will return the status of these oper - ations until these operations have completed exe - cution. writing the corresponding dyb associated with the overlaid boot block sector results in the dyb not being updated. this is only accomplished when the secsi sector is not enabled. reading the corresponding dyb associated with the overlaid boot block sector results in reading in - valid data when the ppb lock/dyb verify com - mand is issued. this function is only accomplished when the secsi sector is not enabled. all commands are available for execution when the secsi sector is enabled except the following list. issuing the following commands while the secsi sector is enabled results in the command being ignored. ? all unlock bypass commands ?cfi ? accelerated program ? program and sector erase suspend ? program and sector erase resume executing the sector erase command is permitted when the secsi sector is enabled, however, there is no provision for erasing the secsi sector with the sector erase command, regardless of the pro - tection status. the sector erase command will erase all other sectors when the secsi sector is enabled. executing the chip erase command is permitted when the secsi sector is enabled. the chip erase command erases all sectors in the memory array except for sector 0 in top-boot block configuration and sector 45 in bottom-boot block configuration. the secsi sector is a one-time programmable memory area that cannot be erased. executing the secsi sector entry command during program or erase suspend mode is allowed. the sector erase/program resume command is dis - abled while the secsi sector is enabled, and the user cannot resume programming of the memory array until the exit secsi sector command is writ - ten. secsi sector protection bit the secsi sector protection bit prevents program - ming of the secsi sector memory area. once set, the secsi sector memory area contents are non-modifi- able.
26 am29bdd160g persistent protection bit lock the persistent protection bit (ppb) lock is a volatile bit that reflects the state of the password mode lock - ing bit after power-up reset. if the password mode locking bit is set, which indicates the device is in password protection mode, the ppb lock bit is also set after a hardware rese t (reset# asserted) or a power-up reset. the only means for clearing the ppb lock bit in password protection mode is to issue the password unlock command. successful execution of the password unlock command clears the ppb lock bit, allowing for sector ppbs modifications. as - serting reset#, taking the device through a power- on reset, or issuing the ppb lock bit set command sets the ppb lock bit back to a ?1?. if the password mode locking bit is not set, indicat - ing persistent sector protection mode, the ppb lock bit is cleared after power-up or hardware reset. the ppb lock bit is set by issuing the ppb lock bit set command. once set the only means for clearing the ppb lock bit is by issuing a hardware or power-up reset. the password unlock command is ignored in persistent sector protection mode. hardware data protection the command sequence requirement of unlock cycles for programming or erasing provides data protection against inadvertent writes. in addition, the following hardware data protec - tion measures prevent accidental erasure or programming, which might otherwise be caused by spurious system level signals during v cc power-up and power-down transitions, or from system noise. low v cc write inhibit when v cc is less than v lko , the device does not accept any write cycles. this protects data dur - ing v cc power-up and power-down. the command register and all internal erase/pro - gram circuits are disabled, and the device resets. subsequent writes are ignored until v cc is greater than v lko . the system must provide the proper signals to the control pins to prevent unintentional writes when v cc is greater than v lko . write pulse ?glitch? protection noise pulses of less than 5 ns (typical) on oe#, ce#, or we# do not initiate a write cycle. logical inhibit write cycles are inhibited by holding any one of oe# = v il , ce# = v ih , or we# = v ih . to initiate a write cycle, ce# and we# must be a logical zero (v il ) while oe# is a logical one (v ih ). power-up write inhibit if we# = ce# = v il and oe# = v ih during power-up, the device does not accept com - mands on the rising edge of we#. the internal state machine is automatically reset to reading array data on power-up. v cc and v io power-up and power-down sequencing the device imposes no restrictions on v cc and v io power-up or power-down sequencing. as - serting reset# to v il is required during the entire v cc and v io power sequence until the re - spective supplies reach their operating voltages. once, v cc and v io attain their respec - tive operating voltages, de-assertion of reset# to v ih is permitted. table 12. sector addressees for top boot sector devices (sheet 1 of 2) sector sector group x16 address range (a18:a-1) x32 address range (a18:a0) sector size (kwords) bank 1 (note 2) sa0 (note 1) sg0 00000h-00fffh 00000h-007ffh 4 sa1 sg1 01000h-01fffh 00800h-00fffh 4 sa2 sg2 02000h-02fffh 01000h-017ffh 4 sa3 sg3 03000h-03fffh 01800h-01fffh 4 sa4 sg4 04000h-04fffh 02000h-027ffh 4 sa5 sg5 05000h-05fffh 02800h-02fffh 4 sa6 sg6 06000h-06fffh 03000h-037ffh 4 sa7 sg7 07000h-07fffh 03800h-03fffh 4 sa8 08000h-0ffffh 04000h-07fffh 32 sa9 sg8 10000h-17fffh 08000h-0bfffh 32 sa10 18000h-1ffffh 0c000h-0ffffh 32
am29bdd160g 27 notes: 1. secsi sector overlays this sector when enabled. 2. the bank address is determined by a18 and a17. ba = 00 for bank 1 and ba = 01, 10, or 11 for bank 2. 3. this sector has the additional wp# pin sector protection feature. sa11 20000h-27fffh 10000h-13fffh 32 sa12 sg9 28000h-2ffffh 14000h-17fffh 32 sa13 30000h-37fffh 18000h-1bfffh 32 sa14 38000h-3ffffh 1c000h-1ffffh 32 sa15 40000h-47fffh 20000h-23fffh 32 sa16 sg10 48000h-4ffffh 24000h-27fffh 32 sa17 50000h-57fffh 28000h-2bfffh 32 sa18 58000h-5ffffh 2c000h-2ffffh 32 sa19 60000h-67fffh 30000h-33fffh 32 sa20 sg11 68000h-6ffffh 34000h-37fffh 32 sa21 70000h-77fffh 38000h-3bfffh 32 sa22 78000h-7ffffh 3c000h-3ffffh 32 sa23 80000h-87fffh 40000h-43fffh 32 sa24 sg12 88000h-8ffffh 44000h-47fffh 32 sa25 90000h-97fffh 48000h-4bfffh 32 sa26 98000h-9ffffh 4c000h-4ffffh 32 sa27 a0000h-a7fffh 50000h-53fffh 32 sa28 sg13 a8000h-affffh 54000h-57fffh 32 bank 2 (note 2) sa29 b0000h-b7fffh 58000h-5bfffh 32 sa30 b8000h-bffffh 5c000h-5ffffh 32 sa31 sg14 c0000h-c7fffh 60000h-63fffh 32 sa32 c8000h-cffffh 64000h-67fffh 32 sa33 d0000h-d7fffh 68000h-6bfffh 32 sa34 d8000h-dffffh 6c000h-6ffffh 32 sa35 sg15 e0000h-e7fffh 70000h-73fffh 32 sa36 e8000h-effffh 74000h-77fffh 32 sa37 f0000h-f7fffh 78000h-7bfffh 32 sa38 sg16 f8000h-f8fffh 7c000h-7c7ffh 4 sa39 sg17 f9000h-f9fffh 7c800h-7cfffh 4 sa40 sg18 fa000h-fafffh 7d000h-7d7ffh 4 sa41 sg19 fb000h-fbfffh 7d800h-7dfffh 4 sa42 sg20 fc000h-fcfffh 7e000h-7e7ffh 4 sa43 sg21 fd000h-fdfffh 7e800h-7efffh 4 sa44 (note 3) sg22 fe000h-fefffh 7f000h-7f7ffh 4 sa45 (note 3) sg23 ff000h-fffffh 7f800h-7ffffh 4 table 12. sector addressees for top boot sector devices (sheet 2 of 2)
28 am29bdd160g table 13. sector addresses for bottom boot sector devices (sheet 1 of 2) sector sector group x16 address range (a18:a-1) x32 address range (a18:a0) sector size (kwords) bank 1 (note 2) sa0 (note 1) sg0 00000h-00fffh 00000h-007ffh 4 sa1 (note 1) sg1 01000h-01fffh 00800h-00fffh 4 sa2 sg2 02000h-02fffh 01000h-017ffh 4 sa3 sg3 03000h-03fffh 01800h-01fffh 4 sa4 sg4 04000h-04fffh 02000h-027ffh 4 sa5 sg5 05000h-05fffh 02800h-02fffh 4 sa6 sg6 06000h-06fffh 03000h-037ffh 4 sa7 sg7 07000h-07fffh 03800h-03fffh 4 sa8 sg8 08000h-0ffffh 04000h-07fffh 32 sa9 10000h-17fffh 08000h-0bfffh 32 sa10 18000h-1ffffh 0c000h-0ffffh 32 sa11 sg9 20000h-27fffh 10000h-13fffh 32 sa12 28000h-2ffffh 14000h-17fffh 32 sa13 30000h-37fffh 18000h-1bfffh 32 sa14 38000h-3ffffh 1c000h-1ffffh 32 sa15 sg10 40000h-47fffh 20000h-23fffh 32 sa16 48000h-4ffffh 24000h-27fffh 32 sa17 50000h-57fffh 28000h-2bfffh 32 sa18 58000h-5ffffh 2c000h-2ffffh 32 sa19 60000h-67fffh 30000h-33fffh 32 sa20 sg11 68000h-6ffffh 34000h-37fffh 32 sa21 70000h-77fffh 38000h-3bfffh 32 sa22 78000h-7ffffh 3c000h-3ffffh 32 sa23 80000h-87fffh 40000h-43fffh 32 sa24 sg12 88000h-8ffffh 44000h-47fffh 32 sa25 90000h-97fffh 48000h-4bfffh 32 sa26 98000h-9ffffh 4c000h-4ffffh 32 sa27 a0000h-a7fffh 50000h-53fffh 32 sa28 sg13 a8000h-affffh 54000h-57fffh 32 sa29 b0000h-b7fffh 58000h-5bfffh 32 sa30 b8000h-bffffh 5c000h-5ffffh 32 sa31 c0000h-c7fffh 60000h-63fffh 32 sa32 sg14 c8000h-cffffh 64000h-67fffh 32 sa33 d0000h-d7fffh 68000h-6bfffh 32 sa34 d8000h-dffffh 6c000h-6ffffh 32 sa35 e0000h-e7fffh 70000h-73fffh 32 sa36 sg15 e8000h-effffh 74000h-77fffh 32
am29bdd160g 29 notes: 1. this sector has the additional wp# pin sector protection feature. 2. the bank address is determined by a18 and a17. ba = 00, 01, or 10 for bank 1 and ba = 11 for bank 2. 3. secsi sector overlays this sector when enabled. bank 2 (note 2) sa37 f0000h-f7fffh 78000h-7bfffh 32 sa38 sg16 f8000h-f8fffh 7c000h-7c7ffh 4 sa39 sg17 f9000h-f9fffh 7c800h-7cfffh 4 sa40 sg18 fa000h-fafffh 7d000h-7d7ffh 4 sa41 sg19 fb000h-fbfffh 7d800h-7dfffh 4 sa42 sg20 fc000h-fcfffh 7e000h-7e7ffh 4 sa43 sg21 fd000h-fdfffh 7e800h-7efffh 4 sa44 sg22 fe000h-fefffh 7f000h-7f7ffh 4 sa45 (note 3) sg23 ff000h-fffffh 7f800h-7ffffh 4 table 13. sector addresses for bottom boot sector devices (sheet 2 of 2)
30 am29bdd160g common flash memory interface (cfi) the common flash interface (cfi) specification out - lines device and host system software interrogation handshake, which allows specific vendor-specified software algorithms to be used for entire families of devices. software support can then be device-inde- pendent, jedec id-independent, and forward- and backward-compatible for the specified flash device families. flash vendors can standardize their existing interfaces for long-term compatibility. this device enters the cfi query mode when the system writes the cfi query command, 98h, to ad - dress 55h in word mode (or address aah in byte mode), any time the device is ready to read array data. the system can read cfi information at the ad - dresses given in tables 13?16. to terminate reading cfi data, the system must write the reset command. the system can also write the cfi query command when the device is in the autoselect mode. the de - vice enters the cfi query mode, and the system can read cfi data at the addresses given in tables 13? 16. the system must write the reset command to re - turn the device to the autoselect mode. for further information, please refer to the cfi spec - ification and cfi publication 100, available via the world wid e web at http://www.amd.com/products/ nvd/overview/cfi.html. alternatively, contact an amd representative for copies of these documents. table 14. cfi query identification string (addresses x32 mode) addresses (x16 mode) data description 10h 11h 12h 20h 22h 24h 0051h 0052h 0059h query unique ascii string ?qry? 13h 14h 26h 28h 0002h 0000h primary oem command set 15h 16h 2ah 2ch 0040h 0000h address for primary extended table 17h 18h 2eh 30h 0000h 0000h alternate oem command set (00h = none exists) 19h 1ah 32h 34h 0000h 0000h address for alternate oem extended table (00h = none exists) table 15. cfi system interface string (sheet 1 of 2) addresses (x32 mode) addresses (x16 mode) data description 1bh 36h 0023h vcc min. (write/erase) dq7?dq4: volts, dq3?dq0: 100 millivolt 1ch 38h 0027h vcc max. (write/erase) dq7?dq4: volts, dq3?dq0: 100 millivolt 1dh 3ah 0000h vpp min. voltage (00h = no vpp pin present) 1eh 3ch 0000h vpp max. voltage (00h = no vpp pin present) 1fh 3eh 0004h typical time out per single word/doubleword program 2n s 20h 40h 0000h typical time out for min. size buffer program 2n s (00h = not supported) 21h 42h 0009h typical time out per individual block erase 2n ms 22h 44h 0000h typical time out for full chip erase 2n ms (00h = not supported) 23h 46h 0005h max. time out for word/doubleword program 2n times typical 24h 48h 0000h max. time out for buffer write 2n times typical 25h 4ah 0007h max. time out per individual block erase 2n times typical
am29bdd160g 31 26h 4ch 0000h max. time out for full chip erase 2n times typical (00h = not supported) table 15. cfi system interface string (sheet 2 of 2) table 16. cfi device geometry definition addresses (x32 mode) addresses (x16 mode) data description 27h 4eh 0015h device size = 2 n byte 28h 29h 50h 52h 0005h 0000h flash device interface description (for complete description, please refer to cfi publication 100) 0000 = x8-only asynchronous interface 0001 = x16-only asynchronous interface 0002 = supports x8 and x16 via byte# with asynchronous interface 0003 = x 32-only asynchronous interface 0005 = supports x16 and x32 via word# with asynchronous interface 2ah 2bh 54h 56h 0000h 0000h max. number of byte in multi-byte program = 2 n (00h = not supported) 2ch 58h 0003h 0004h number of erase block regions within device 0003 = speed options 54d, 65d, 65a 2dh 2eh 2fh 30h 5ah 5ch 5eh 60h 0007h 0000h 0020h 0000h erase block region 1 information (refer to the cfi specification or cfi publication 100) 31h 32h 33h 34h 62h 64h 66h 68h 001dh 0000h 0000h 0001h erase block region 2 information (refer to the cfi specification or cfi publication 100) 35h 36h 37h 38h 6ah 6ch 6eh 70h 0007h 0000h 0020h 0000h erase block region 3 information (refer to the cfi specification or cfi publication 100) 39h 3ah 3bh 3ch 72h 74h 76h 78h 0000h 0000h 0000h 0000h erase block region 4 information (refer to the cfi specification or cfi publication 100) table 17. cfi primary vendor-specific extended query (sheet 1 of 3) addresses (x32 mode) addresses (x16 mode) data description 40h 41h 42h 80h 82h 84h 0050h 0052h 0049h query-unique ascii string ?pri? 43h 86h 0031h major version number, ascii (reflects modifications to the silicon) 44h 88h 0033h minor version number, ascii (reflects modifications to the cfi table)
32 am29bdd160g 45h 8ah 0004h address sensitive unlock (dq1, dq0) 00 = required, 01 = not required silicon revision number (dq5?dq2 0000 = cs49 0001 = cs59 0010 = cs99 0011 = cs69 0100 = cs119 46h 8ch 0002h erase suspend (1 byte) 00 = not supported 01 = to read only 02 = to read and write 47h 8eh 0001h sector protect (1 byte) 00 = not supported, x = number of sectors in per group 48h 90h 0000h temporary sector unprotect 00h = not supported, 01h = supported 49h 92h 0006h sector protect/unprotect scheme (1 byte) 01 =29f040 mode, 02 = 29f016 mode 03 = 29f400 mode, 04 = 29lv800 mode 05 = 29bds640 mode (software command locking) 06 = bdd160 mode (new sector protect) 07 = 29lv800 + pdl128 (new sector protect) mode 4ah 94h 001fh simultaneous operation (1 byte) 00h = not supported, x = number of sectors in all banks except bank 1 4bh 96h 0001h burst mode type 00h = not supported, 01h = supported 4ch 98h 0000h page mode type 00h = not supported, 01h = 4 word page, 02h = 8 word page 4dh 9ah 00b5h acc (acceleration) supply minimum 00h = not supported (dq7-dq4: volt in hex, dq3-dq0: 100 mv in bcd) 4eh 9ch 00c5h acc (acceleration) supply maximum 00h = not supported, (dq7-dq4: volt in hex, dq3-dq0: 100 mv in bcd) 4fh 9eh 0001h top/bottom boot sector flag (1 byte) 00h = uniform device, no wp# control, 01h = 8 x 8 kb sectors at top and bottom with wp# control 02h = bottom boot device 03h = top boot device 04h = uniform, bottom wp# protect 05h = uniform, top wp# protect if the number of erase block regions = 1, then ignore this field 50h a0h 0001h program suspend 00 = not supported 01 = supported 51h a2h 0000h write buffer size 2 (n+1) word(s) table 17. cfi primary vendor-specific extended query (sheet 2 of 3)
am29bdd160g 33 command definitions writing specific address and data commands or se - quences into the command register initiates device operations. tables 18-21 define the valid register command sequences. writing incorrect address and data values or writing them in the improper sequence resets the device to reading array data. all addresses are latched on the falling edge of we# or ce#, whichever happens later. all data is latched on the rising edge of we# or ce#, whichever hap - pens first. refer to the ac characteristics section for timing diagrams. reading array data in non-burst mode the device is automatically set to reading array data after device power-up. no commands are required to retrieve data. the device is also ready to read array data after completing an embedded program or em - bedded erase algorithm. after the device accepts an erase suspend com - mand, the device enters the erase suspend mode. the system can read array data using the standard read timings, except that if it reads at an address within erase-suspended sectors, the device outputs status data. after completing a programming opera - tion in the erase suspend mode, the system may once again read array data with the same exception. see sector erase and program suspend command for more information on this mode. the system must issue the reset command to re-en- able the device for reading array data if dq5 goes high, or while in the autoselect mode. see the the programming of the ppb lock bit for a given sector can be verified by writing a ppb lock bit status verify command to the device. section. see also asynchronous read operation (non-burst) in the key to switching waveforms section for more information. see the sector erase and program re - sume command sections for more information on this mode. reading array data in burst mode the device is capable of very fast burst mode read operations. the configuration register sets the read configuration, burst order, frequency configuration, and burst length. upon power on, the device defaults to the asynchro - nous mode. in this mode, clk, and adv# are ignored. the device operates like a conventional flash device. data is available t acc / t ce nanoseconds after address becomes stable, ce# become as - serted. the device enters the burst mode by enabling synchronous burst reads in the configura - tion register. the device exits burst mode by disabling synchronous burst reads in the configura - tion register. (see command definitions ). the reset# command will not terminate the burst mode. system reset (power on reset) will terminate the burst mode. the device has the regular control pins, i.e. chip en - able (ce#), write enable (we#), and output enable (oe#) to control normal read and write operations. moreover, three additional control pins have been added to allow easy interface with minimal glue logic to a wide range of microprocessors / microcontrollers for high performance burst read capability. these additional pins are address valid (adv#) and clock (clk). ce#, oe#, and we# are asynchronous (rela - tive to clk). the burst mode read operation is a synchronous operation tied to the edge of the clock. the microprocessor / microcontroller supplies only the initial address, all subsequent addresses are au - tomatically generated by the device with a timing defined by the configuration register definition. the burst read cycle consists of an address phase and a corresponding data phase. during the address phase, the address valid (adv#) pin is asserted (taken low) for one clock period. to - gether with the edge of the clk, the starting burst address is loaded into the internal burst address counter. the internal burst address counter can be configured to either the linear modes (see ?initial access delay configuration?). 57h aeh 0002h bank organization (1 byte) 00 = if data at 4ah is zero xx = number of banks 58h b0h 000fh bank 1 region information (1 byte) xx = number of sectors in bank 1 59h b2h 001fh bank 2 region information (1 byte) xx = number of sectors in bank 2 5ah b4h 0000h bank 3 region information (1 byte) xx = number of sectors in bank 3 5bh b6h 0000h bank 4 region information (1 byte) xx = number of sectors in bank 4 table 17. cfi primary vendor-specific extended query (sheet 3 of 3)
34 am29bdd160g during the data phase, the first burst data is avail - able after the initial access time delay defined in the configuration register. for subsequent burst data, every rising (or falling) edge of the clk will trigger the output data with the burst output delay and se - quence defined in the configuration register. tables 17?20 show all the commands executed by the device. the device automatically powers up in the read/reset state. it is not necessary to issue a read/re-set command after power-up or hardware reset. read/reset command after power-up or hardware reset, the am29bdd160 automatically enter the read state. it is not neces - sary to issue the reset command after power-up or hardware reset. standard microprocessor cycles re - trieve array data, however, after power-up, only asynchronous accesses are permitted since the con - figuration register is at its reset state with burst accesses disabled. the reset command is executed when the user needs to exit any of the other user command se - quences (such as autoselect, program, chip erase, etc.) to return to reading array data. there is no la - tency between executing the reset command and reading array data. the reset command does not disable the secsi sec - tor if it is enabled. this function is only accomplished by issuing the secsi sector exit command. autoselect command flash memories are intended for use in applications where the local cpu alters memory contents. as such, manufacturer and device codes must be acces - sible while the device resides in the target system. prom programmers typically access the signature codes by raising a9 to v id . however, multiplexing high voltage onto the address lines is not generally desired system design practice. the am29bdd160 contains an autoselect command operation to supplement traditional prom program - ming methodology. the operation is initiated by writing the autoselect command sequence into the command register. the bank address (ba) is latched during the autoselect command sequence write op - eration to distinguish which bank the autoselect command references. reading the other bank after the autoselect command is written results in reading array data from the other bank and the specified ad - dress. following the command write, a read cycle from address (ba)xx00h re trieves the manufacturer code of (ba)xx01h. three sequential read cycles at addresses (ba) xx01h, (ba) xx0eh, and (ba) xx0fh read the three-byte device id (see tables 19 and 20). all manufacturer and device codes exhibit odd parity with the msb of the lower byte (dq7) defined as the parity bit. (the autoselect command requires the user to exe - cute the read/reset command to return the device back to reading the array contents.) program command sequence programming is a four-bus-cycle operation. the pro - gram command sequence is initiated by writing two unlock write cycles, followed by the program set-up command. the program address and data are writ - ten next, which in turn initiate the embedded program algorithm. the system is not required to provide further controls or timings. the device auto - matically generates the program pulses and verifies the programmed cell margin. tables 18 and 20 shows the address and data requirements for the program command sequence. during the embedded program algorithm, the sys - tem can determine the status of the program operation by using dq7, dq6, or ry/by#. (see write operation status for information on these status bits.) when the embedded program algorithm is complete, the device returns to reading array data and addresses are no longer latched. note that an address change is required to begin read valid array data. except for program suspend, any commands written to the device during the embedded program algo - rithm are ignored. note that a hardware reset immediately terminates the programming operation. the command sequence should be reinitiated once that bank has returned to reading array data, to en - sure data integrity. programming is allowed in any sequence and across sector boundaries. a bit cannot be programmed from a ?0? back to a ?1?. attempting to do so may halt the operation and set dq5 to ?1,? or cause the data# polling algorithm to indicate the operation was successful. however, a succeeding read will show that the data is still ?0?. only erase operations can convert a ?0? to a ?1?. accelerated program command the accelerated chip program mode is designed to improve the word or double word programming speed. improving the programming speed is accom - plished by using the acc pin to supply both the word-line voltage and the bitline current instead of using the v pp pump and drain pump, which is limited to 2.5 ma. because the external acc pin is capable of supplying significantly large amounts of current compared to the drain pump, all 32 bits are available for programming with a single programming pulse. this is an enormous improvement over the standard 5-bit programming. if the user is able to supply an external power supply and connect it to the acc pin, significant time savings are realized. in order to enter the accelerated program mode, the acc pin must first be taken to v hh (12 v 0.5 v) and followed by the one-cycle command with the program address and data to follow. the accelerated chip program command is only executed when the
am29bdd160g 35 d evice is in unlock bypass mode and during normal read/reset operating mode. in this mode, the write protection function is by - passed unless the ppb lock bit = 1. the accelerated program command is not permitted if the secsi sector is enabled. unlock bypass command sequence the unlock bypass feature allows the system to pro - gram words to the device faster than using the standard program command sequence. the unlock bypass command sequence is initiated by first writ - ing two unlock cycles. this is followed by a third write cycle containing the unlock bypass command, 20h. the device then enters the unlock bypass mode. a two-cycle unlock bypass program command sequence is all that is required to program in this mode. the first cycle in this sequence contains the unlock bypass program command, a0h; the second cycle contains the program address and data. addi - tional data is programmed in the same manner. this mode dispenses with the initial two unlock cycles re - quired in the standard program command sequence, resulting in faster total programming time. tables 18 and 20 show the requirements for the command se - quence. during the unlock bypass mode, only the unlock by - pass program and unlock bypass reset commands are valid. to exit the unlock bypass mode, the sys - tem must issue the two-cycle unlock bypass reset command sequence. the first cycle must contain the data 90h; the second cycle the data 00h. addresses are don?t care for both cycles. the device then re - turns to reading array data. figure 4 illustrates the algorithm for the program op - eration. see the erase/program operations table in ac characteristics for parameters, and to figure 22 for timing diagrams. note: see tables 18 and 20 for program command sequence. figure 4. program operation unlock bypass entry command the unlock bypass command, once issued, is used to bypass the ?unlock? sequence for program, chip erase, and cfi commands. this feature permits slow prom programmers to significantly improve pro - gramming/erase throughput since the command sequence often requires microseconds to execute a single write operation. therefore, once the unlock bypass command is issued, only the two-cycle pro - gram and erase bypass commands are required. the unlock bypass command is ignored if the secsi sec - tor is enabled. to return back to normal operation, the unlock bypass reset command must be issued. the following four sections describe the commands that may be executed within the unlock bypass mode. unlock bypass program command the unlock bypass program command is a two-cycle command that consists of the actual program com - mand (a0h) and the program address/data combination. this command does not require the two-cycle ?unlock? sequence since the unlock bypass command was previously issued. as with the stan - dard program command, multiple unlock bypass program commands can be issued once the unlock bypass command is issued. to return back to standard read operations, the un - lock bypass reset command must be issued. the unlock bypass program command is ignored if the secsi sector is enabled. start
36 am29bdd160g unlock bypass chip erase command the unlock bypass chip erase command is a 2-cycle command that consists of the erase setup command (80h) and the actual chip erase command (10h). this command does not require the two-cycle ?un - lock? sequence since the unlock bypass command was previously issued. unlike the standard erase command, there is no unlock bypass erase suspend or erase resume commands. to return back to standard read operations, the un - lock bypass reset command must be issued. the unlock bypass program command is ignored if the secsi sector is enabled. unlock bypass cfi command the unlock bypass cfi command is available for prom programmers and target systems to read the cfi codes while in unlock bypass mode. see com - mon flash memory interface (cfi) for specific cfi codes. to return back to standard read operations, the un - lock bypass reset command must be issued. the unlock bypass program command is ignored if the secsi sector is enabled. the unlock bypass reset command places the device in standard read/reset operating mode. once exe - cuted, normal read operations and user command sequences are available for execution. the unlock bypass program command is ignored if the secsi sector is enabled. chip erase command the chip erase command is used to erase the entire flash memory contents of the chip by issuing a single command. chip erase is a six-bus cycle operation. there are two ?unlock? write cycles, followed by writ - ing the erase ?set up? command. two more ?unlock? write cycles are followed by the chip erase com - mand. chip erase does not erase protected sectors. the chip erase operation initiates the embedded erase algorithm, which automatically preprograms and verifies the entire memory to an all zero pattern prior to electrical erase. the system is not required to provide any controls or timings during these oper - ations. note that a hardware reset immediately terminates the programming operation. the com - mand sequence should be reinitiated once that bank has returned to reading array data, to ensure data integrity. the embedded erase algorithm erase begins on the rising edge of the last we# or ce# pulse (whichever occurs first) in the command sequence. the status of the erase operation is determined three ways: data# polling of the dq7 pin (see dq7: data# polling ) checking the status of the toggle bit dq6 (see dq6: toggle bit i ) checking the status of the ry/by# pin (see ry/ by#: ready/busy# ) once erasure has begun, only the erase suspend command is valid. all other commands are ignored. when the embedded erase algorithm is complete, the device returns to reading array data, and ad - dresses are no longer latched. note that an address change is required to begin read valid array data. figure 5 illustrates the embedded erase algorithm. see the erase/program operations tables in ac characteristics for parameters, and to figure 22 for timing diagrams. sector erase command the sector erase command is used to erase individ - ual sectors or the entire flash memory contents. sector erase is a six-bus cycle operation. there are two ?unlock? write cycles, followed by writing the erase ?set up? command. two more ?unlock? write cycles are then followed by the erase command (30h). the sector address (any address location within the desired sector) is latched on the falling edge of we# or ce# (whichever occurs last) while the command (30h) is latched on the rising edge of we# or ce# (whichever occurs first). specifying multiple sectors for erase is accomplished by writing the six bus cycle operation, as described above, and then following it by additional writes of only the last cycle of the sector erase command to addresses or other sectors to be erased. the time between sector erase command writes must be less than 80 s, otherwise the command is rejected. it is recommended that processor interrupts be disabled during this time to guarantee this critical timing con - dition. the interrupts can be re-enabled after the last sector erase command is written. a time-out of 80 s from the rising edge of the last we# (or ce#) will initiate the execution of the sector erase com - mand(s). if another falling edge of the we# (or ce#) occurs within the 80 s time-out window, the timer is reset. once the 80 s window has timed out and erasure has begun, only the erase suspend command is recognized (see sector erase and pro - gram suspend command and sector erase and program resume command sections). if that occurs, the sector erase command sequence should be reini - tiated once that bank has returned to reading array data, to ensure data integrity. loading the sector erase registers may be done in any sequence and with any number of sectors. sector erase does not require the user to program the device prior to erase. the device automatically preprograms all memory locations, within sectors to be erased, prior to electrical erase. when erasing a sector or sectors, the remaining unselected sectors or the write protected sectors are unaffected. the system is not required to provide any controls or timings during sector erase operations. the erase suspend and erase resume commands may be writ - ten as often as required during a sector erase operation.
am29bdd160g 37 automatic sector erase operations begin on the ris - ing edge of the we# or ce# pulse of the last sector erase command issued, and once the 80 s time-out window has expired. the status of the sector erase operation is determined three ways: data# polling of the dq7 pin checking the status of the toggle bit dq6 checking the status of the ry/by# pin further status of device activity during the sector erase operation is determined using toggle bit dq2 (refer to dq2: toggle bit ii ). when the embedded erase algorithm is complete, the device returns to reading array data, and ad - dresses are no longer latche d. note that an address change is required to begin read valid array data. figure 5 illustrates the embedded? erase algorithm, using a typical command sequence and bus opera - tion. refer to the erase/program operations tables in the ac characteristics section for parameters, and to figure 22 for timing diagrams. note: 1. see tables 18 and 20 for erase command sequence. 2. see dq3: sector erase timer for more information. figure 5. erase operation sector erase and program suspend command the sector erase and program suspend command allows the user to interrupt a sector erase or pro - gram operation and perform data read or programs in a sector that is not being erased or to the sector where a programming operation was initiated. this command is applicable only during the sector erase and programming operation, which includes the time-out period for sector erase. sector erase and program suspend operation mechanics a successful erase pulse has a duration or 1.2 ms 20%, depending on the number of previous erase cycles (among other factors). a successful sector erase operation requires 300 successful erase pulses. an internal counter monitors the number of erase pulses initiated and has a maximum value of 5980. the counter is incremented by one every time an erase pulse is initiated, regardless of whether or not that erase pulse is successful. an erase pulse is ter - minated immediately when the suspend command is executed. a new erase pulse is initiated when the re - sume command is executed (and the counter is incremented). given that 300 successful erase pulses are required, a successful sector erase operation shall have a maximum of 5680 erase suspends. the sector erase and program suspend command is ignored if written during the execution of the chip erase operation or embedded program algorithm (but will reset the chip if written improperly during the command sequences). writing the sector erase and program command during the sector erase time-out results in immediate termination of the time-out period and suspension of the erase opera - tion. once in erase suspend, the device is available for reading (note that in the erase suspend mode, the reset command is not required for read opera - tions and is ignored) or program operations in sectors not being erased. any other command writ - ten during the erase suspend mode is ignored, except for the sector erase and program resume command. writing the erase and program resume command resumes the sector erase operation. the bank address of the erase suspended bank is re - quired when writing this command if the sector erase and program suspend command is written during a programming operation, the de - vice suspends programming operations and allows only read operations in sectors not selected for pro - gramming. further nesting of either erase or programming operations is not permitted. table 18 summarizes permissible operations during erase and program suspend. (a busy sector is one that is se - lected for programming or erasure.): embedded erase algorithm in progress table 18. allowed operations during erase/program suspend sector program suspend erase suspend busy sector program resume erase resume non-busy sectors read only read or program
38 am29bdd160g when the sector erase and program suspend com - mand is written during a sector erase operation, the chip will take between 0.1 s and 20 s to actually suspend the operation and go into the erase sus - pended read mode (pseudo-read mode), at which time the user can read or program from a sector that is not erase suspended. reading data in this mode is the same as reading from the standard read mode, except that the data must be read from sectors that have not been erase suspended. polling dq6 on two immediately consecutive reads from a given address provides the system with the ability to determine if the device is in erase or pro - gram suspend. before the device enters erase or program suspend, the dq6 pin toggles between two immediately consecutive reads from the same ad - dress. after the device has entered erase suspend, dq6 stops toggling between two immediately con - secutive reads to the same address. during the sector erase operation and also in erase suspend mode, two immediately consecutive readings from the erase-suspended sector causes dq2 to toggle. dq2 does not toggle if reading from a non-busy (non-erasing) sector (stored data is read). no bits are toggled during program suspend mode. software must keep track of the fact that the device is in a suspended mode. after entering the erase-suspend-read mode, the system may read or program within any non-sus - pended sector: a read operation from the erase-suspended bank returns polling data during the first 8 s after the erase suspend command is issued; read opera - tions thereafter return array data. read opera - tions from the other bank return array data with no latency. a program operation while in the erase suspend mode is the same as programming in the regular program mode, except that the data must be pro - grammed to a sector that is not erase suspended. write operation status is obtained in the same manner as a normal program operation. sector erase and program resume command the sector erase and program resume command (30h) resumes a sector erase or program operation that has been suspended. any further writes of the sector erase and program resume command ig - nored. however, another sector erase and program suspend command can be written after the device has resumed sector erase operations. note that until a suspended program or erase operation has re - sumed, the contents of that sector are unknown. the sector erase and program resume command is ignored if the secsi sector is enabled. configuration register read command the configuration register read command is used to verify the contents of the configuration register. execution of this command is only al - lowed while in user mode and is not available during unlock bypass mode or during security mode. the configuration register read com - mand is preceded by the standard two-cycle ?unlock? sequence, followed by the configura - tion register read command (c6h), and finally followed by performing a read operation to the bank address specified when the c6h command was written. reading the other bank results in reading the flash memory contents. the con - tents of the configuration register are place on dq15?dq0. if word# is at v ih (32-bit dq bus), the contents of dq31?dq16 are xxxxh and should be ignored. the user should execute the read/reset command to place the device back in standard user operation after executing the configuration register read command. the configuration register read command is fully operational if the secsi sector is enabled. configuration register write command the configuration register write command is used to modify the contents of the configura - tion register. execution of this command is only allowed while in user mode and is not available during unlock bypass mode or during security mode. the configuration register write com - mand is preceded by the standard two-cycle ?unlock? sequence, followed by the configura - tion register write command (d0h), and finally followed by writing the contents of the configu - ration register to any address. the contents of the configuration register are place on dq15? dq0. if word# is at v ih (32-bit dq bus), the contents of dq31?dq16 are xxxxh and are ig - nored. writing the config uration register while an embedded algorithm? or erase suspend modes are executing results in the contents of the configuration register not being updated. the configuration register read command is fully operational if the secsi sector is enabled. common flash interface (cfi) command the common flash interface (cfi) command pro - vides device size, geometry, and capability information directly to the users system. flash de - vices that support cfi, have a ?query command? that returns information about the device to the sys - tem. the query structure contents are read at the specific address locations following a single system write cycle where: a 98h query command code is written to 55h ad - dress location within the device?s address space the device is initially in any valid read state, such as ?read array? or ?read id data? other device statistics may exist within a long se - quence of commands or data input; such sequences must first be completed or terminated before writing of the 98h query command, otherwise invalid query data structure output may result.
am29bdd160g 39 note that for data bus bits greater than dq 7 (dq31?dq8), the valid query access code has all ze - roes (?0?s) in the upper dq bus locations. thus, the 16-bit query command code is 0098h and the 32-bit query command code is 00000098h. to terminate the cfi operation, it is necessary to ex - ecute the read/reset command. the cfi command is not permitted if the secsi sec - tor see common flash memory interface (cfi) for the is enabled and simultaneous operation is dis - abled specific cfi command codes, once the command is entered. see common flash memory interface (cfi) for the specific cfi command codes.
40 am29bdd160g secsi sector entry command the secsi sector entry command enables the secsi (otp) sector to overlay the 8 kb outermost sector in the small (25%) bank. the secsi sector overlays 00000h?0003fh for the top boot block configuration and 7ffc0h?7ffffh for the bottom boot block confi - uration. address range 00040h?007ffh for the top boot block and 7f800h?7ffbfh return invalid data when addressed with the secsi sector enabled. the following commands are permitted after issuing the secsi sector entry command: 1. autoselect 2. password program (x16 and x32) 3. password verify 4. password unlock (x16 and x32) 5. read/reset 6. program 7. chip and sector erase 8. secsi sector protection bit program 9. ppb program 10.all ppb erase 11. ppb lock bit set 12.dyb write 13.dyb/ppb/ppb lock bit verify 14.security reset 15.configuration register write 16.configuration register read the following commands are unavailable when the secsi sector is enabled. issuing the following com - mands while the secsi sector is enabled results in the command being ignored. 1. unlock bypass 2. cfi 3. accelerated program 4. program and sector erase suspend 5. program and sector erase resume the secsi sector entry command is allowed when the device is in either program or erase suspend modes. if the secsi sector is enabled, the program or erase suspend command is ignored. this prevents resuming either programming or erasure on the secsi sector if the overlaid sector was undergoing programming or erasure. the host system must ensure that the device resume any suspended program or erase operation after exiting the secsi sector . executing any of the ppb program/erase commands, or password unlock command results in the small bank (25% bank) returning the status of these oper - ations while they are in progress, thus making the secsi sector unavailable for reading. if the secsi sector is enabled while the dyb command is issued, the dyb for the overlaid sector is not updated. reading the dyb status using the ppb lock bit/dyb - dyb verify command when the secsi sector is enabled returns invalid data. password program command the password program command permits program - ming the password that is used as part of the hardware protection scheme. the actual password is 64-bits long. depending upon the state of the word# pin, multiple password program commands are required. for a x16 bit data bus, 4 password pro - gram commands are required to program the password. for a x32 bit data bus, 2 password pro - gram commands are required. the user must enter the unlock cycle, password program command (38h) and the program address/data for each portion of the password when programming. there are no pro - visions for entering the 2-cycle unlock cycle, the password program command, and all the password data. there is no special addressing order required for programming the password. also, when the pass - word is undergoing programming, simultaneous operation is disabled. read operations to any mem - ory location will return the programming status. once programming is complete, the user must issue a read/reset command to return the device to nor - mal operation. once the password is written and verified, the password mode locking bit must be set in order to prevent verification. the password pro - gram command is only capable of programming ?0?s. programming a ?1? after cell is programmed as a ?0? results in a time-out by the embedded program algorithm? with the cell remaining as a ?0?. the password is all f?s when shipped from the factory. all 64-bit password combinations are valid as a pass - word. password programming is permitted if the secsi sec - tor is enabled. password verify command the password verify command is used to verify the password. the password is verifiable only when the password mode locking bit is not programmed. if the password mode locking bit is programmed and the user attempts to verify the password, the device will always drive all f?s onto the dq data bus. the password verify command is permitted if the secsi sector is enabled. also, the device will not op - erate in simultaneous operation when the password verify command is executed. only the password is returned regardless of the bank address. the lower two address bits (a0:a-1) are valid during the pass - word password protection mode locking bit program command the password protection mode locking bit program command programs the password protection mode locking bit, which prevents further verifies or up - dates to the password. once programmed, the password protection mode locking bit cannot be
am29bdd160g 41 erased! if the password protection mode locking bit is verified as program without margin, the password protection mode locking bit program command can be executed to improve the program margin. once the password protection mode locking bit is pro - grammed, the persistent sector protection locking bit program circuitry is disabled, thereby forcing the device to remain in the password protection mode. exiting the mode locking bit program command is accomplished by writing the read/reset command. the password protection mode locking bit program command is permitted if the secsi sector is enabled. persistent sector protection mode locking bit program command the persistent sector protection mode locking bit program command programs the persistent sector protection mode locking bit, which prevents the password mode locking bit from ever being pro - grammed. if the persistent sector protection mode locking bit is verified as programmed without mar - gin, the persistent sector protection mode locking bit program command should be reissued to im - prove program margin. by disabling the program circuitry of the password mode locking bit, the de - vice is forced to remain in the persistent sector protection mode of operation, once this bit is set. ex - iting the persistent protection mode locking bit program command is accomplished by writing the read/reset command. the persistent sector protection mode locking bit program command is permitted if the secsi sector is enabled. secsi sector protection bit program command the secsi sector protection bit program com - mand programs the secsi sector protection bit, which prevents the secsi sector memory from being cleared. if the secsi sector protection bit is verified as programmed without margin, the secsi sector protection bit program command should be reissued to improve program margin. exiting the v cc -level secsi sector protection bit program command is accomplished by writing the read/reset command. the secsi sector protection bit program command is permitted if the secsi sector is enabled. ppb lock bit set command the ppb lock bit set command is used to set the ppb lock bit if it is cleared either at reset or if the pass - word unlock command was successfully executed. there is no ppb lock bit clear command. once the ppb lock bit is set, it cannot be cleared unless the device is taken through a power-on clear or the password unlock command is executed. upon setting the ppb lock bit, the ppbs are latched into the dybs. if the password mode locking bit is set, the ppb lock bit status is reflected as set, even after a power-on reset cycle. exiting the ppb lock bit set command is accomplished by writing the read/reset command. the ppb lock bit set command is permitted if the secsi sector is enabled. dyb write command the dyb write command is used to set or clear a dyb for a given sector. the high order address bits (a18?a11) are issued at the same time as the code 01h or 00h on dq7-dq0. all other dq data bus pins are ignored during the data write cycle. the dybs are modifiable at any time, regardless of the state of the ppb or ppb lock bit. the dybs are cleared at power-up or hardware reset.exiting the dyb write command is accomplished by writing the read/reset command. the dyb write command is permitted if the secsi sector is enabled. password unlock command the password unlock command is used to clear the ppb lock bit so that the ppbs can be unlocked for modification, thereby allowing the ppbs to become accessible for modification. the exact password must be entered in order for the unlocking function to oc - cur. this command cannot be issued any faster than 2 s at a time to prevent a hacker from running through the all 64-bit combinations in an attempt to correctly match a password. if the command is is - sued before the 2 s execution window for each portion of the unlock, the command will be ignored. the password unlock function is accomplished by writing password unlock command and data to the device to perform the clearing of the ppb lock bit. the password is 64 bits long, so the user must write the password unlock command 2 times for a x32 bit data bus and 4 times for a x16 data bus. a0 is used to determine whether the 32 bit data quantity is used to match the upper 32 bits or lower 32 bits. a0 and a -1 is used for matching when the x16 bit data bus is set command is a ddress order specific. in other words, for the x32 data bus configuration, the lower 32 bits of the password are written first and then the upper 32 bits of the password are written. for the x16 data bus configuration, the lower ad - dress a0:a -1 = 00, the next password unlock command is to a0:a -1 = 01, then to a0:a -1 = 10, and finally to a0:a -1 = 11. writing out of sequence results in the password unlock not returning a match with the password and the ppb lock bit remains set. once the password unlock command is entered, the rdy/bsy# pin goes low indicating that the device is busy. also, reading the small bank (25% bank) re - sults in the dq6 pin toggling, indicating that the password unlock function is in progress. reading the large bank (75% bank) returns actual array data. approximately 1usec is required for each portion of the unlock. once the first portion of the password unlock completes (rdy/bsy# is not driven and dq6 does not toggle when read), the password unlock
42 am29bdd160g command is issued again, only this time with the next part of the password. if word# = 1, the sec - ond password unlock command is the final command before the ppb lock bit is cleared (assuming a valid password). if word# = 0, this is the fourth pass - word unlock command. in x16 mode, four password unlock commands are required to successfully clear the ppb lock bit. as with the first password unlock command, the ry/by# signal goes low and reading the device results in the dq6 pin toggling on succes - sive read operations until complete. it is the responsibility of the microprocessor to keep track of the number of password unlock commands (2 for x32 bus and 4 for x16 bus), the order, and when to read the ppb lock bit to confirm successful password unlock the password unlock command is permitted if the secsi sector is enabled. ppb program command the ppb program command is used to program, or set, a given ppb. each ppb is individually pro - grammed (but is bulk erased with the other ppbs). the specific sector address (a18?a11) are written at the same time as the program command 60h with a6 = 0. if the ppb lock bit is set and the corre - sponding ppb is set for the sector, the ppb program command will not execute and the command will time-out without programming the ppb. the host system must determine whether a ppb has been fully programmed by noting the status of dq0 in the sixth cycle of the ppb program command. if dq0 = 0, the entire six-cycle ppb program command sequence must be reissued until dq0 = 1. the all ppb erase command is used to erase all ppbs in bulk. there is no means for individually erasing a specific ppb. unlike the ppb program, no specific sector address is required. however, when the ppb erase command is written (60h) and a6 = 1, all sec - tor ppbs are erased in parallel. if the ppb lock bit is set the all ppb erase command will not execute and the command will time-out without erasing the ppbs. the host system must determine whether all ppb has been fully erased by noting the status of dq0 in the sixth cycle of the all ppb erase command. if dq0 = 1, the entire six-cycle all ppb erase command se - quence must be reissued until dq0 = 1. it is the responsibility of the user to preprogram all ppbs prior to issuing the all ppb erase command. if the user attempts to erase a cleared ppb, over-era- sure may occur making it difficult to program the ppb at a later time. also note that the total number of ppb program/erase cycles is limited to 100 cycles. cycling the ppbs beyond 100 cycles is not guaran - teed. the all ppb erase command is permitted if the secsi sector is enabled. dy b w r i te the dyb write command is used for setting the dyb, which is a volatile bit that is cleared at reset. there is one dyb per sector. if the ppb is set, the sector is protected regardless of the value of the dyb. if the ppb is cleared, setting the dyb to a 1 protects the sector from programs or erases. since this is a vola - tile bit, removing power or resetting the device will clear the dybs. the bank address is latched when the command is written. the dyb write command is permitted if the secsi sector is enabled. ppb lock bit set the ppb lock bit set command is used for setting the dyb, which is a volatile bit that is cleared at reset. there is one dyb per sector. if the ppb is set, the sector is protected regardless of the value of the dyb. if the ppb is cleared, setting the dyb to a 1 protects the sector from programs or erases. since this is a volatile bit, removing power or resetting the device will clear the dybs. the bank address is latched when the command is written. the ppb lock command is permitted if the secsi sec - tor is enabled. dy b s ta tu s the programming of the dyb for a given sector can be verified by writing a dyb status verify command to the device. the programming of the ppb for a given sector can be verified by writing a ppb status verify command to the device. ppb lock bit status the programming of the ppb lock bit for a given sec - tor can be verified by writing a ppb lock bit status verify command to the device. non-volatile protection bit program and erase flow the device uses a standard command sequence for programming or erasing the secsi sector protection, password locking, persistent sector protection mode locking, or persistent protection bits. unlike devices that have the single high voltage sector unprotect/ protect feature, the am29bdd160 has the standard two-cycle unlock followed by 60h, which places the device into non-volatile bit program or erase mode. once the mode is entered, the specific non-volatile bit status is read on dq0. figure 4 shows a typical flow for programming the non-volatile bit and figure 5 shows a typical flow for erasing the non-volatile bits. the secsi sector protection, password locking, persistent sector protection mode locking bits are not erasable after they are programmed. however, the ppbs are both erasable and programmable (de - pending upon device security). unlike single high voltage sector protect/unprotect, the a6 pin no longer functions as the program/erase
am29bdd160g 43 selector nor the program/erase margin enable. in - stead, this function is accomplished by issuing the specific command for either program (68h) or erase (60h). in asynchronous mode, the dq6 toggle bit indicates whether the program or erase sequence is active. (in synchronous mode, adv# indicates the status.) if the dq6 toggle bit toggles with either oe# or ce#, the non-volatile bit program or erase operation is in progress. when dq6 stops toggling, the value of the non-volatile bit is available on dq0.
44 am29bdd160g legend: ba = address of the bank that is being switched to autose - lect mode, is in bypass mode, or is being erased. deter - mined by a18 and a17, see tables 11 and 12 for more detail. pa = program address (a18:a0). addresses latch on the falling edge of the we# or ce# pulse, whichever hap - pens later pd = program data (dq31:dq0) written to location pa. data latches on the rising edge of we# or ce# pulse, whichever happens first. ra = read address (a18:a0). rd = read data (dq31:dq0) from location ra. sa = sector address (a18:a11) for verifying (in autoselect mode), erasing, or applying security commands. wd = write data. see ?configuration register? definition x= don?t care notes: 1. see table 1 for description of bus operations. 2. all values are in hexadecimal. 3. shaded cells in table denote read cycles. all other cycles are write operations. 4. during unlock cycles, (lower address bits are 555 or 2aah as shown in table) address bits higher than a11 (except where ba is required) and data bits higher than dq7 are don?t cares. table 19. memory array command definitions (x32 mode) command (notes) cycles bus cycles (notes 1?4) first second third fourth fifth sixth addr data addr data addr data addr data addr data addr data read (5) 1 ra rd reset (6) 1 xxx f0 autoselec t (7) manufactur er id 4 555 aa 2aa 55 555 90 (ba)x0 0 01 device id (11) 6 555 aa 2aa 55 555 90 (ba)x0 1 7e (ba)x0e 08 (ba)x0f 00/ 01 program 4 555 aa 2aa 55 555 a0 pa pd chip erase 6 555 aa 2aa 55 555 80 555 aa 2aa 55 555 10 sector erase 6 555 aa 2aa 55 555 80 555 aa 2aa 55 sa 30 program/erase suspend (12) 1 ba b0 program/erase resume (13) 1 ba 30 cfi query (14, 15) 1 55 98 accelerated program (16) 2 xx a0 pa pd configuration register verify (15) 3 555 aa 2aa 55 (ba)55 5 c6 (ba)xx rd configuration register write (17) 4 555 aa 2aa 55 555 d0 xx wd unlock bypass entry (18) 3 555 aa 2aa 55 555 20 unlock bypass program (18) 2 xx a0 pa pd unlock bypass erase (18) 2 xx 80 xx 10 unlock bypass cfi (14, 18) 1 xx 98 unlock bypass reset (18) 2 xx 90 xx 00
am29bdd160g 45 5. no unlock or command cycles required when bank is reading array data. 6. the reset command is required to return to the read mode (or to the erase-suspend-read mode if previously in erase suspend) when a bank is in the autoselect mode, or if dq5 goes high (while the bank is providing status information). 7. the fourth cycle of the autoselect command sequence is a read cycle. the system must provide the bank address to obtain the manufacturer id or device id information. see the autoselect command section for more information. 8. this command cannot be executed until the unlock bypass command must be executed before writing this command sequence. the unlock bypass reset command must be executed to return to normal operation. 9. this command is ignored during any embedded program, erase or suspended operation. 10. valid read operations include asynchronous and burst read mode operations. 11. the device id must be read across the fourth, fifth, and sixth cycles. 00h in the sixth cycle indicates top boot block, 01h indicates bottom boot block. 12. the system may read and program in non-erasing sectors, or enter the autoselect mode, when in the program/erase suspend mode. the program/erase suspend command is valid only during a sector erase operation, and requires the bank address. 13. the program/erase resume command is valid only during the erase suspend mode, and requires the bank address. 14. command is valid when device is ready to read array data or when device is in autoselect mode. 15. asynchronous read operations. 16. acc must be at v id during the entire operation of this command. 17. command is ignored during any embedded program, embedded erase, or suspend operation. 18. the unlock bypass entry command is required prior to any unlock bypass operation. the unlock bypass reset command is required to return to the read mode. table 20. sector protection command definitions (x32 mode) (sheet 1 of 2) command (notes) cycles bus cycles (notes 1-4) first second third fourth fifth sixth addr data addr data addr data addr data addr data addr data reset 1 xxx f0 secsi sector entry 3 555 aa 2aa 55 555 88 secsi sector exit 4 555 aa 2aa 55 555 90 xx 00 secsi protection bit program (5, 6) 6 555 aa 2aa 55 555 60 ow 68 ow 48 ow rd(0) secsi protection bit status 6 555 aa 2aa 55 555 60 ow rd(0) password program (5, 7, 8) 4 555 aa 2aa 55 555 38 pwa[0- 1] pwd[0- 1] password verify 4 555 aa 2aa 55 555 c8 pwa[0- 1] pwd[0- 1] password unlock (7, 8) 5 555 aa 2aa 55 555 28 pwa[0- 1] pwd[0- 1] ppb program (5, 6) 6 555 aa 2aa 55 555 60 (sa)wp 68 (sa)wp 48 (sa)wp rd(0) all ppb erase (5, 9, 10) 6 555 aa 2aa 55 555 60 wp 60 (sa)wp 40 (sa)wp rd(0) ppb status (11, 12) 4 555 aa 2aa 55 555 90 (sa)x02 00/01 ppb lock bit set 3 555 aa 2aa 55 555 78 ppb lock bit status 4 555 aa 2aa 55 (ba) 555 58 sa rd(1) dyb write (7) 4 555 aa 2aa 55 555 48 sa x1 dyb erase (7) 4 555 aa 2aa 55 555 48 sa x0
46 am29bdd160g dyb = dynamic protection bit ow = address (a5?a0) is (011x10). ppb = persistent pro - tection bit pwa = password address. a0 selects between the low and high 32-bit portions of the 64-bit password pwd = password data. must be written over two cycles. pl = password protection mode lock address (a5?a0) is (001x10) rd(0) = read data dq0 protection indicator bit. if pro - tected, dq0= 1, if unprotected, dq0 = 0. rd(1) = read data dq1 protection indicator bit. if pro - tected, dq1 = 1, if unprotected, dq1 = 0. sa = sector address where security command applies. address bits a18:a11 uniquely select any sector. sl = persistent protection mode lock address (a5?a0) is (010x10) wp = ppb address (a5?a0) is (111x10) x = don?t care ppmlb = password protection mode locking bit spmlb = persistent protection mode locking bit 1. see table 1 for description of bus operations. 2. all values are in hexadecimal. 3. shaded cells in table denote read cycles. all other cycles are write operations. 4. during unlock cycles, (lower address bits are 555 or 2aah as shown in table) address bits higher than a11 (except where ba is required) and data bits higher than dq7 are don?t cares. 5. the reset command returns the device to reading the ar - ray. 6. the fourth cycle programs the addressed locking bit. the fifth and sixth cycles are used to validate whether the bit has been fully programmed. if dq0 (in the sixth cycle) reads 0, the program command must be issued and vil - ified again. 7. data is latched on the rising edge of we#. 8. the entire four bus-cycle sequence must be entered for each portion of the password. 9. the fourth cycle erases all ppbs. the fifth and sixth cy - cles are used to validate whether the bits have been fully erased. if dq0 (in the sixth cycle) reads 1, the erase command must be issued and verified again. 10. before issuing the erase command, all ppbs should be programmed in order to prevent over-erasure of ppbs. 11. in the fourth cycle, 00h indicates ppb set; 01h indicates ppb not set. 12. the status of additional ppbs and dybs may be read (fol - lowing the fourth cycle) without reissuing the entire command sequence. dyb status (12) 4 555 aa 2aa 55 (ba) 555 58 sa rd(0) ppmlb program (5,6) 6 555 aa 2aa 55 555 60 pl 68 pl 48 pl rd(0) ppmlb status (5) 6 555 aa 2aa 55 555 60 pl rd(0) spmlb program (5, 6) 6 555 aa 2aa 55 555 60 sl 68 sl 48 sl rd(0) spmlb status (5) 6 555 aa 2aa 55 555 60 sl rd(0) table 20. sector protection command definitions (x32 mode) (sheet 2 of 2)
am29bdd160g 47 legend: ba = address of the bank that is being switched to autose - lect mode, is in bypass mode, or is being erased. deter - mined by a18 and a17, see tables 11 and 12 for more detail. pa = program address (a18:a-1). addresses latch on the falling edge of the we# or ce# pulse, whichever hap - pens later. pd = program data (dq15:dq0) written to location pa. data latches on the rising edge of we# or ce# pulse, whichever happens first. ra = read address (a18:a-1). rd = read data (dq15:dq0) from location ra. sa = sector address (a18:a11) for verifying (in autoselect mode), erasing, or applying security commands wd = write data. see ?configuration register? definition for specific write data. data latched on rising edge of we#. x = don?t care note: 1. see table 1 for description of bus operations. 2. all values are in hexadecimal. 3. shaded cells in table denote read cycles. all other cycles are write operations. 4. during unlock cycles, (lower address bits are aaa or 555h as shown in table) address bits higher than a11 table 21. memory array command definitions (x16 mode) command (notes) cycles bus cycles (notes 1?4) first second third fourth fifth sixth addr data addr data addr data addr data addr data addr data read (5) 1 ra rd reset (6) 1 xxx f0 autoselec t (7) manufactur er id 4 aaa aa 555 55 aaa 90 (ba)x0 0 01 device id (11) 6 aaa aa 555 55 aaa 90 (ba)x0 2 7e (ba)x1c 08 (ba)x1e 00/ 01 program 4 aaa aa 555 55 aaa a0 pa pd chip erase 6 aaa aa 555 55 aaa 80 aaa aa 555 55 555 10 sector erase 6 aaa aa 555 55 aaa 80 aaa aa 555 55 sa 30 program/erase suspend (12) 1 ba b0 program/erase resume (13) 1 ba 30 cfi query (14, 15) 1 aa 98 accelerated program (16) 2 xx a0 pa pd configuration register verify (15) 3 aaa aa 555 55 (ba)55 5 c6 (ba)xx rd configuration register write (17) 4 aaa aa 555 55 aaa d0 xx wd unlock bypass entry (18) 3 aaa aa 555 55 aaa 20 unlock bypass program (18) 2 xx a0 pa pd unlock bypass erase (18) 2 xx 80 xx 10 unlock bypass cfi (14, 18) 1 xx 98 unlock bypass reset (18) 2 xx 90 xx 00
48 am29bdd160g (except where ba is required) and data bits higher than dq7 are don?t cares. 5. no unlock or command cycles required when bank is reading array data. 6. the reset command is required to return to the read mode (or to the erase-suspend-read mode if previously in erase suspend) when a bank is in the autoselect mode, or if dq5 goes high (while the bank is providing status information). 7. the fourth cycle of the autoselect command sequence is a read cycle. the system must provide the bank address to obtain the manufacturer id or device id information. see the autoselect command section for more informa - tion. 8. this command cannot be executed until the unlock by - pass command must be executed before writing this command sequence. the unlock bypass reset command must be executed to return to normal operation. 9. this command is ignored during any embedded pro - gram, erase or suspended operation. 10. valid read operations include asynchronous and burst read mode operations. 11. the device id must be read across the fourth, fifth, and sixth cycles. 00h in the sixth cycle indicates top boot block, 01h indicates bottom boot block. 12. the system may read and program in non-erasing sec - tors, or enter the autoselect mode, when in the pro - gram/erase suspend mode. the program/erase suspend command is valid only during a sector erase operation, and requires the bank address. 13. the program/erase resume command is valid only dur - ing the erase suspend mode, and requires the bank ad - dress. 14. command is valid when device is ready to read array data or when device is in autoselect mode. 15. asynchronous read operations. 16. acc must be at v id during the entire operation of this com - mand. 17. command is ignored during any embedded program, embedded erase, or suspend operation. 18. the unlock bypass entry command is required prior to any unlock bypass operation. the unlock bypass reset command is required to return to the read mode.
am29bdd160g 49 legend:legend: dyb = dynamic protection bit ow = address (a5?a0) is (011x10). pd3:0 = four 32-bit quantities representing the password. ppb = persistent protection bit pwa = password address. a0:a-1 selects between the lo and high 16-bit portions of the 64-bit password pwd = password data.must be written over four cycles. pl = password protection mode lock address (a5-a0) is (001x10) table 22. sector protection command definitions (x16 mode) command (notes) cycles bus cycles (notes 1-4) first second third fourth fifth sixth addr data addr data addr data addr data addr data addr data reset 1 xxx f0 secsi sector entry 3 aaa aa 555 55 aaa 88 secsi sector exit 4 aaa aa 555 55 aaa 90 xx 00 secsi protection bit program (5, 6) 6 aaa aa 555 55 aaa 60 ow 68 ow 48 ow rd(0) secsi protection bit status 6 aaa aa 555 55 aaa 60 ow rd(0) password program (5, 7, 8) 5 aaa aa 555 55 aaa 38 pwa[0? 3] pwd[0? 3] password verify 4 aaa aa 555 55 aaa c8 pwa[0? 3] pwd[0? 3] password unlock (7, 8) 5 aaa aa 555 55 aaa 28 pwa[0? 3] pwd[0? 3] ppb program (5, 6) 6 aaa aa 555 55 aaa 60 (sa)wp 68 (sa)wp 48 (sa)wp rd(0) all ppb erase (5, 9, 10) 6 aaa aa 555 55 aaa 60 wp 60 (sa)wp 40 (sa)wp rd(0) ppb status (11, 12) 4 aaa aa 555 55 aaa 90 (sa)x04 00/01 ppb lock bit set 3 aaa aa 555 55 aaa 78 ppb lock bit status 4 aaa aa 555 55 (ba) aaa 58 sa rd(1) dyb write (7) 4 aaa aa 555 55 aaa 48 sa x1 dyb erase (7) 4 aaa aa 555 55 aaa 48 sa x0 dyb status (12) 4 aaa aa 555 55 (ba) aaa 58 sa rd(0) ppmlb program (5, 6) 6 aaa aa 555 55 aaa 60 pl 68 pl 48 pl rd(0) ppmlb status (5) 6 aaa aa 555 55 aaa 60 pl rd(0) spmlb program (5, 6) 6 aaa aa 555 55 aaa 60 sl 68 sl 48 sl rd(0) spmlb status (5) 6 aaa aa 555 55 aaa 60 sl rd(0)
50 am29bdd160g rd(0) = read data dq0 protection indicator bit. if pro - tected, dq0 = 1, if unprotected, dq0 = 0. rd(1) = read data dq1 protection indicator bit. if pro - tected, dq1 = 1, if unprotected, dq1 = 0. sa = sector address where security command applies. ad - dress bits a18:a11 uniquely select any sector. sl = persistent protection mode lock address (a5?a0) is (010x10) wp = ppb address (a5?a0) is (111x10) x = don?t care ppmlb = password protection mode locking bit spmlb = persistent protection mode locking bit 1. 1. see table 1 for description of bus operations. 2. 2.all values are in hexadecimal. 3. 3.shaded cells in table denote read cycles. all other cycles are writer operations. 4. during unlock cycles, (lower address bits are aaa or 555h as shown in the table) address bits higher that a11 (except where ba is required) and data bits higher than dq7 are dont?s cares. 5. the reset command returns the device to reading the array. 6. the fourth cycle programs the addressed locking bit. the fifth and sixth cycles are used to validate whether the bit is fully programmed. if dq0 (in the sixth cycle) reads 0, the program command must be issued and verified again. 7. data is latched on the rising edge of we#. 8. the entire four bus-cycle sequence must be entered for each portion of the password. pwa (0-3) represent the four addresses over which the password is stored. pwd (0-3) represent the four word data that comprise the password. 9. the fourth cycle erases all ppbs. the fifth and sixth cycles are used to validate whether the bits are fully erased. if dq0 (in the sixed cycle) reads 1, the erase command must be issued and verified again. 10. before issuing the erase command, all ppbs should be programmed in order to prevent over-erasure of ppbs. 11. in the fourth cycle, 00h indicates ppb set; 01h indicates: ppb not set. 12. the status of additional ppbs and dybs may be read (following the fourth cycle) without reissuing the entire command sequence
am29bdd160g 51 write operation status the device provides several bits to determine the status of a write operation: dq2, dq3, dq5, dq6, dq7, and ry/by#. table 23 and the following sub - sections describe the functions of these bits. dq7, ry/by#, and dq6 each offer a method for determin - ing whether a program or erase operation is complete or in progress. these three bits are dis - cussed first. dq7: data# polling the am29bdd160 features a data# polling flag as a method to indicate to the host system whether the embedded algorithms are in progress or are com - plete. during the embedded program algorithm an attempt to read the bank in which programming was initiated will produce the complement of the data last written to dq7. upon completion of the embedded program algorithm, an attempt to read the device will produce the true last data written to dq7. note that data# polling returns invalid data for the ad - dress being programmed or erased. for example, the data read for an address pro - grammed as 0000 0000 1000 0000b will return xxxx xxxx 0xxx xxxxb during an embedded pro - gram operation. once the embedded program algorithm is complete, the true data is read back on dq7. note that at the instant when dq7 switches to true data, the other bits may not yet be true. how - ever, they will all be true data on the next read from the device. please note that data# polling may give misleading status when an attempt is made to write to a protected sector. for chip erase, the data# polling flag is valid after the rising edge of the sixth we# pulse in the six write pulse sequence. for sector erase, the data# polling is valid after the last rising edge of the sector erase we# pulse. data# polling must be performed at sector addresses within any of the sectors being erased and not a sector that is a protected sector. otherwise, the status may not be valid. dq7 = 0 during an embedded erase algorithm (chip erase or sector erase operation) but will return a ?1? after the operation completes because it will have dropped back into read mode. in asynchronous mode, just prior to the completion of the embedded algorithm operations, dq7 may change asynchronously while oe# is asserted low. (in synchronous mode, adv# exhibits this behavior.) the status information may be invalid during the in - stance of transition from status information to array (memory) data. an extra validity check is therefore specified in the data polling algorithm. the valid array data on dq31?dq0 (dq15?dq0 when word# = 0) is available for reading on the next successive read attempt. the data# polling feature is only active during the embedded programming algorithm, embedded erase algorithm, erase suspend, erase suspend-program mode, or sector erase time-out. if the user attempts to write to a protected sector, data# polling will be activated for about 1 s: the device will then return to read mode, with the data from the protected sector unchanged. if the user at - tempts to erase a protected sector, toggle bit (dq6) will be activated for about 150 s; the device will then return to read mode, without having erased the protected sector. table 23 shows the outputs for data# polling on dq7. figure 6 shows the data# polling algorithm. figure 27 shows the timing diagram for synchronous status dq7 data polling. ry/by#: r ead y/bu sy# the device provides a ry/by# open drain output pin as a way to indicate to the host system that the em - bedded algorithms are either in progress or have been completed. if the output is low, the device is busy with either a program, erase, or reset opera - tion. if the output is floating, the device is ready to accept any read/write or erase operation. when the ry/by# pin is low, the device will not accept any ad - ditional program or erase commands with the exception of the erase suspend command. if the de - vice has entered erase suspend mode, the ry/by# output will be floating. for programming, the ry/ by# is valid (ry/by# = 0) after the rising edge of the fourth we# pulse in the four write pulse se - quence. for chip erase, the ry/by# is valid after the rising edge of the sixth we# pulse in the six write pulse sequence. for sector erase, the ry/by# is also valid after the rising edge of the sixth we# pulse. if reset# is asserted during a program or erase op - eration, the ry/by# pin remains a ?0? (busy) until the internal reset operation is complete, which re - quires a time of t ready (during embedded algorithms). the system can thus monitor ry/by# to determine whether the reset operation is complete. if reset# is asserted when a program or erase op - eration is not executing (ry/by# pin is ?floating?), the reset operation is completed in a time of t ready (not during embedded algorithms). the system can read data t rh after the reset# pin returns to v ih . since the ry/by# pin is an open-drain output, sev - eral ry/by# pins can be tied together in parallel with a pull-up resistor to v cc . an external pull-up resistor is required to take ry/by# to a v ih level since the output is an open drain. table 23 shows the outputs for ry/by#. figures 15, 19, 21 and 22 shows ry/by# for read, reset, pro - gram, and erase operations, respectively.
52 am29bdd160g note: 1. va = valid address for programming. during a sector erase operation, a valid address is an address within any sector selected for erasure. during chip erase, a valid address is any non-protected sector address. 2. 2.dq7 should be rechecked even if dq5 = ?1? because dq7 may change simultaneously with dq5. figure 6. data# polling algorithm dq6: toggle bit i toggle bit i on dq6 indicates whether an embedded program or erase algorithm is in progress or com - plete, or whether the device has entered the erase suspend mode. toggle bit i may be read at any ad - dress, and is valid after the rising edge of the final we# pulse in the command sequence (prior to the program or erase operation), and during the sector erase time-out. during an embedded program or erase algorithm op - eration, two immediately consecutive read cycles to any address cause dq6 to toggle. when the opera - tion is complete, dq6 stops toggling. for asynchronous mode, either oe# or ce# can be used to control the read cycles. for synchronous mode, the rising edge of adv# is used or the rising edge of clock while adv# is low. after an erase command sequence is written, if all sectors selected for erasing are protected, dq6 tog - gles for approximately 100 s, then returns to reading array data. if not all selected sectors are protected, the embedded erase algorithm erases the unprotected sectors, and ignores the selected sec - tors that are protected. the system can use dq6 and dq2 together to deter - mine whether a sector is actively erasing or is erase- suspended. when the device is actively erasing (that is, the embedded erase algorithm is in progress), dq6 toggles. when the device enters the erase sus - pend mode, dq6 stops toggling. however, the system must also use dq2 to determine which sec - tors are erasing or erase-suspended. alternatively, the system can use dq7 (see the subsection on dq7: data# polling ). if a program address falls within a protected sector, dq6 toggles for approximately 1 s after the pro - gram command sequence is written, then returns to reading array data. dq6 also toggles during the erase-suspend-program mode, and stops toggling once the embedded pro - gram algorithm is complete. table 23 shows the outputs for toggle bit i on dq6. figure 7 shows the toggle bit algorithm in flowchart form, and the section reading toggle bits dq6/dq2 explains the algorithm. figure 25 in the ac charac - teristics section shows the toggle bit timing diagrams. figure 25 shows the differences between dq2 and dq6 in graphical form. see also the subsec - tion on dq2: toggle bit ii . figure 27 shows the timing diagram for synchronous toggle bit status. dq2: toggle bit ii the ?toggle bit ii? on dq2, when used with dq6, in - dicates whether a particular sector is actively erasing (that is, the embedded erase algorithm is in progress), or whether that sector is erase-sus - pended. toggle bit ii is valid after the rising edge of the final we# pulse in the command sequence. dq2 toggles when the system performs two immedi - ately consecutive reads at addresses within those sectors that have been selected for erasure. (for asynchronous mode, either oe# or ce# can be used to control the read cycles. for synchronous mode, adv# is used.) but dq2 cannot distinguish whether the sector is actively erasing or is erase-suspended. dq6, by comparison, indicates whether the device is actively erasing, or is in erase suspend, but cannot distinguish which sectors are selected for erasure. thus, both status bits are required for sector and mode information. refer to table 23 to compare out - puts for dq2 and dq6.
am29bdd160g 53 figure 7 shows the toggle bit algorithm in flowchart form, and the section reading toggle bits dq6/dq2 explains the algorithm. see also the dq6: toggle bit i subsection. figure 25 shows the toggle bit timing diagram. figure 25 shows the differences between dq2 and dq6 in graphical form. figure 27 shows the timing diagram for synchronous dq2 toggle bit sta - tus. reading toggle bits dq6/dq2 refer to figure 25 for the following discussion. whenever the system initially begins reading toggle bit status, it must perform two immediately consecu - tive reads of dq7?dq0 to determine whether a toggle bit is toggling. typically, the system would note and store the value of the toggle bit after the first read. after the second read, the system would compare the new value of the toggle bit with the first. if the toggle bit is not toggling, the device has completed the program or erase operation. the sys - tem can read array data on dq7?dq0 on the following read cycle. however, if after the initial two immediately consecu - tive read cycles, the system determines that the toggle bit is still toggling, the system also should note whether the value of dq5 is high (see the sec - tion on dq5). if it is, the system should then determine again whether the toggle bit is toggling, since the toggle bit may have stopped toggling just as dq5 went high. if the toggle bit is no longer tog - gling, the device has successfully completed the program or erase operation. if it is still toggling, the device did not complete the operation successfully, and the system must write the reset command to re - turn to reading array data. the remaining scenario is that the system initially determines that the toggle bit is toggling and dq5 has not gone high. the system may continue to monitor the toggle bit and dq5 through successive read cycles, determining the status as described in the previous paragraph. alternatively, it may choose to perform other system tasks. in this case, the sys - tem must start at the beginning of the algorithm when it returns to determine the status of the opera - tion (top of figure 7). dq5: exceeded timing limits dq5 indicates whether the program or erase time has exceeded a specified internal pulse count limit. under these conditions dq5 produces a ?1.? this is a failure condition that indicates the program or erase cycle was not successfully completed. note: 1. read toggle bit with two immediately consecutive reads to determine whether or not it is toggling. see text. 2. recheck toggle bit because it may stop toggling as dq5 changes to ?1?. see text. figure 7. toggle bit algorithm the dq5 failure condition may appear if the system tries to program a ?1? to a location that is previously programmed to ?0.? only an erase operation can change a ?0? back to a ?1.? under this condition, the device halts the operation, and when the opera - tion has exceeded the timing limits, dq5 produces a ?1.? under both these conditions, the system must issue the reset command to return the device to reading array data. after writing a sector erase command sequence, the system may read dq3 to determine whether or not an erase operation has begun. (the sector erase timer does not apply to the chip erase command.) if
54 am29bdd160g additional sectors are selected for erasure, the entire time-out also applies after each additional sector erase command. when the time-out is complete, dq3 switches from ?0? to ?1.? the system may ig - nore dq3 if the system can guarantee that the time between additional sector erase commands will al - ways be less than 50 s. see also the sector erase command section. after the sector erase command sequence is written, the system should read the status on dq7 (data# polling) or dq6 (toggle bit i) to ensure the device has accepted the command sequence, and then read dq3. if dq3 is ?1?, the internally controlled erase cycle has begun; all further commands (other than erase suspend) are ignored until the erase operation is complete. if dq3 is ?0?, the device will accept ad - ditional sector erase commands. to ensure the command has been accepted, the system software should check the status of dq3 prior to and following each subsequent sector erase command. if dq3 is high on the second status check, the last command might not have been accepted. table 23 shows the outputs for dq3. notes: 1. dq5 switches to ?1? when an embedded program or embedded erase operation has exceeded the maximum timing limits. see dq5: exceeded timing limits for more information. 2. dq7 and dq2 require a valid address when reading status information. refer to the appropriate subsection for further details. table 23. write operation status operation dq7 (note 2) dq6 dq5 (note 1) dq3 dq2 (note 2) ry/by# standard mode embedded program algorithm dq7# to g gl e 0 n/a no toggle 0 embedded erase algorithm 0 to g gl e 0 1 to g gle 0 erase suspend mode reading within erase suspended sector 1 no toggle 0 n/a to g gle 1 reading within non-erase suspended sector data data data data data 1 erase-suspend-program dq7# to g gl e 0 n/a n/a 0
am29bdd160g 55 absolute maximum ratings storage temperature plastic packages. . . . . . . . . . . . . .?65c to +150c ambient temperature with power applied . . . .... . . .... ?65c to +145c v cc , v io (note 1) . . . . . . . . ..... . .?0.5 v to + 3.0 v acc, a9 , oe# , and reset# (note 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .?0.5 v to +13.0 v address, data, control signals (with the exception of clk) (note 1) ?0.5 v to 3.6 all other pins (note 1) . . . . . . . . . .?0.5 v to +5.5 v output short circuit current (note 3) . . . . . 200 ma notes: 1. minimum dc voltage on input or i/o pins is ?0.5 v. during voltage transitions, input at i/o pins may overshoot v ss to ?2.0 v for periods of up to 20 ns. see figure 9. maximum dc voltage on output and i/o pins is 3.6 v. during voltage transitions output pins may overshoot to v cc + 2.0 v for periods up to 20 ns. see figure 9. 2. minimum dc input voltage on pins acc, a9, oe#, and reset# is -0.5 v. during voltage transitions, a9, oe#, and reset# may overshoot v ss to ?2.0 v for periods of up to 20 ns. see figure 8. maximum dc input voltage on pin a9 and oe# is +13.0 v which may overshoot to 14.0 v for periods up to 20 ns. 3. 3.no more than one output may be shorted to ground at a time. duration of the short circuit should not be greater than one second. 4. 4.stresses above those listed under ?absolute maximum ratings? may cause permanent damage to the device. this is a stress rating only; functional operation of the device at these or any other conditions above those indicated in the operational sections of this data sheet is not implied. exposure of the device to absolute maximum rating conditions for extended periods may affect device reliability. figure 8. maximum negative overshoot waveform figure 9. maximum positive overshoot waveform operating ranges industrial (i) devices ambient temperature (t a ) . . . .?40c to +85c extended (e) devices ambient temperature (t a ) . . .?40c to +125c v cc supply voltages v cc for regulated voltage range . 2.5 v to 2.75 v v io supply voltages v io . . . . . . . . . . . . . . . . . . . . 1.65 v to 2.75 v operating ranges define those limits between which the functionality of the device is guaranteed. 20 ns 20 ns 20 ns +0.8 v -0.5 v -2.0 v 20 ns v cc +2.0v v cc +0.5v 2.0 v 20 ns 20 ns
56 am29bdd160g dc characteristics note: 5. 1. the i cc current listed includes both the dc operating current and the frequency dependent component. 6. 2. i cc active while embedded erase or embedded program is in progress. 7. 3. not 100% tested. 8. 4. maximum i cc specifications are tested with v cc = v ccmax . 9. 5. current maximum has been increased significantly from data sheet revision b+4, dated april 8, 2003. 10. table 24. cmos compatible paramete r description test conditions min typ max unit i li input load current v in = v ss to v io , v io = v io max 1.0 a i liwp input load current, wp# v in = v ss to v io , v io = v io max ?25 a i lo output leakage current v out = v ss to v cc , v cc = v cc max 1.0 a i ccb v cc active burst read current (note 1) ce# = v il , oe# = v il 56 mhz 8 double-word 70 90 ma 66 mhz i cc1 v cc active asynchronous read current (note 1) ce# = v il , oe# = v il 1 mhz 4 ma i cc3 v cc active program current (notes 2, 4) ce# = v il , oe# = v ih , acc = v ih 40 50 ma i cc4 v cc active erase current (notes 2, 4) ce# = v il , oe# = v ih , acc = v ih 20 50 ma i cc5 (note 5) v cc standby current (cmos) v cc = v cc max , ce# = v cc 0.3 v 60 a i cc6 v cc active current (read while write) ce# = v il , oe# = v il 30 90 ma i cc7 (note 5) v cc reset current reset# = v il 60 a i cc8 (note 5) automatic sleep mode current v ih = v cc 0.3 v, v il = v ss 0.3 v 60 a i acc v acc acceleration current acc = v hh 20 ma v il input low voltage ?0.5 0.3 x v io v v ih input high voltage 0.7 x v io 3.6 v v ilclk clk input low voltage ?0.2 0.3 x v io v v ihclk clk input high voltage 0.7 x v cc 2.75 v v id voltage for autoselect v cc = 2.5 v 11.5 12.5 v v ol output low voltage i ol = 4.0 ma, v cc = v cc min 0.45 v i olrb ry/by#, output low current v ol = 0.4 v 8 ma v hh accelerated (acc pin) high voltage i oh = ?2.0 ma, v cc = v cc min 0.85 x v cc v v oh output high voltage i oh = ?100 a, v cc = v cc min v io ?0.1 v v lko low v cc lock-out voltage (note 3) 1.6 2.0 v
am29bdd160g 57 dc characteristics (continued) zero power flash note: addresses are switching at 1 mhz figure 10. i cc1 current vs. time (showing active and automatic sleep currents) figure 11. typical icc1 vs. frequency 0 500 1000 1500 2000 2500 3000 3500 4000 time in ns 3000 0 4 8 12 16 20 123 4 5 supply current in ma frenquency in mhz note: t = -40 o c 2.7 v
58 am29bdd160g test conditions note: diodes are in3064 or equivalent figure 12. test setup key to switching waveforms ks000010-pal switching waveforms figure 13. input waveforms and measurement levels table 25. test specifications test condition 54d, 64c 65a unit output load 1 ttl gate output load capacitance, c l (including jig capacitance) 30 100 pf input rise and fall times 5 ns input pulse levels 0.0 v ? v io v input timing measurement reference levels v io /2 v output timing measurement reference levels v io /2 v waveform inputs outputs steady changing from h to l changing from l to h don?t care, any change permitted changing, state unknown does not apply center line is high impedance state (high z) v io v ss
am29bdd160g 59 ac characteristics v cc and v io power up figure 14. v cc and v io power-up diagram parameter description test setup speed unit t vcs v cc setup time min 50 s t vios v io setup time min 50 s t rsth reset# low hold time min 50 s
60 am29bdd160g ac characteristics asynchronous read operations note: 1. not 100% tested. 2. see figure 12 and table 24 for test specifications parameter description test setup speed options unit jedec std. 54d 64c 65a t avav t rc read cycle time (note 1) max 54 64 67 ns t avqv t acc address to output delay ce# = v il oe# = v il max 54 64 67 ns t elqv t ce chip enable to output delay oe# = v il max 58 69 71 ns t glqv t oe output enable to output delay max 20 28 ns t ehqz t df chip enable to output high z (note 1) max 10 ns t ghqz t df output enable to output high z (note 1) min 2 ns max 10 ns read min 0 ns t oeh output enable hold time (note 1) to gg le a n d data# polling min 10 ns t axqx t oh output hold time from addresses, ce# or oe#, whichever occurs first (note 1) min 2 ns
am29bdd160g 61 ac characteristics burst mode read note: see product selector guide for minimum initia l clock delay prior to initial valid data. t iacc may also be calculated using the following formula: t iacc = (clock delays) x (clock period) + t bacc . parameter description speed options unit jedec std. 54d 64c 65a t iacc asynchronous access time adv# valid clock to output delay (see note) max 54 64 67 ns t bacc burst access time valid clock to output delay max 9 fbga 9.5 pqfp 10 fbga 10 pqfp 17 ns t advcs adv# setup time to rising (falling) edge of clk min 4 5 7 ns t advch adv# hold time min 2 ns t advp adv# pulse width min 15 15 18 ns t bdh data hold time from next clock cycle max 4 ns t dvch valid data hold from clk min 2 3 3 ns t dind clk to valid ind/wait# max 9 fbga 9.5 pqfp 10 fbga 10 pqfp 17 ns t indh ind/wait# hold from clk min 2 3 3 ns t iacc clk to valid data out, initial burst access max 54 60 68 ns t clk clk period min 15 18 25 ns max 60 t cr clk rise time max 3 ns t cf clk fall time max 3 ns t ch clk high time min 2.5 2.5 3 ns t cl clk low time min 2.5 2.5 3 ns tds data setup to we# rising edge min 15 15 16 ns t dh data hold from we# rising edge min 2 ns t as address setup to falling edge of we# min 0 ns t ah address hold from falling edge of we# min 25 30 33 ns t cs ce# setup time min 3 ns t ch ce# hold time min 3 ns t acs address setup time to clk (see note) min 5 6 7 ns t ach address hold time from adv# rising edge (see note) min 1 2 2 ns t oe output enable to output valid max 20 ns t df t oez output enable to output high z min 2 3 3 ns max 10 15 17 t ehqz t cez chip enable to output high z max 10 15 17 ns t ces ce# setup time to clock min 4 5 6 ns
62 am29bdd160g ac characteristics figure 15. conventional read operations timings figure 16. burst mode read (x32 mode) ry/by# 0 v
am29bdd160g 63 figure 17. asynchronous command write timing note: all commands have the same number of cycles in both asynchronous and synchronous modes, including the read/ reset command. only a single array access occurs after the f0h command is entered. all subsequent accesses are burst mode when the burst mode option is enabled in the configuration register. figure 18. synchronous command write/read timing note: all commands have the same number of cycles in both asynchronous and synchronous modes, including the read/ reset command. only a single array access occurs after the f0h command is entered. all subsequent accesses are burst mode when the burst mode option is enabled in the configuration register. ce# a18-a0 dq31 -dq0 we# oe# ind/wait# cd# c d # clk c l k adv# a d v # a18-a0 a 1 8 - a 0 , word# w o r d # dq31-dq0 d q 3 1 - d q 0 oe# o e # we# w e # ind/wait# i n d / w a i t #
64 am29bdd160g ac characteristics hardware reset (reset#) note: not 100% tested. parameter description test setup all speed options unit jedec std. t ready reset# pin low (during embedded algorithms) to read or write (see note) max 11 s t ready reset# pin low (not during embedded algorithms) to read or write (see note) max 500 ns t rp reset# pulse width min 500 ns t rh reset# high time before read (see note) min 50 ns t rpd reset# low to standby mode min 20 s t rb ry/by# recovery time min 0 ns t ready reset# active for bank not executing embedded algorithm max 500 ns t rh reset# high time before read max 50 ns t ready reset# active for bank executing embedded algorithm max 11 s t drne reset# delay to read mode during normal erase max 7 s t rmx r e s e t # d e l a y t o re a d m o d e i f r e s e t # is held active for maximum delay (see previous two parameters) max 50 ns
am29bdd160g 65 figure 19. reset timing figure 20. wp# timing reset timing to bank not executing embedded algorithm reset timing to bank executing embedded algorithm
66 am29bdd160g ac characteristics erase/program operations note: 1. not 100% tested. 2. see the section for more information. parameter description all speed options unit jedec std. t avav t wc write cycle time (note 1) min 60 ns t avwl t as address setup time min 0 ns t wlax t ah address hold time min 25 ns t dvwh t ds data setup to we# rising edge min 15 ns t whdx t dh data hold from we# rising edge min 2 ns t oes output enable setup time min 0 ns t ghwl t ghwl read recovery time before write (oe# high to we# low) min 0 ns t elwl t cs ce# setup time min 0 ns t wheh t ch ce# hold time min 0 ns ce# setup to clk min 7 t wlwh t wp we# width min 25 ns t whwl t wph write pulse width high min 30 ns t whwh1 t whwh1 programming operation (note 2) typ 9 s t whwh2 t whwh2 sector erase operation (note 2) typ 0.5 sec. t vc s vcc setup time (note 1) min 50 s t rb recovery time from ry/by# min 0 ns t busy ry/by# delay after we# rising edge max 90 ns t wpws wp# setup to we# rising edge with command min 20 ns t wprh wp# hold after ry/by# rising edge max 2 ns
am29bdd160g 67 ac characteristics note: pa = program address, pd = program data, d out is the true data at the program address. figure 21. program operation timings note:note: sa = sector address (for sector erase), va = valid address for reading status data (see write operation status ). figure 22. chip/sector erase operation timings
68 am29bdd160g ac characteristics figure 23. back-to-back cycle timing note: va = valid address. illustration shows first status cycle after command sequence, last status read cycle, and array data read cycle. figure 24. data# polling timings (during embedded algorithms)
am29bdd160g 69 ac characteristics note: va = valid address; not required for dq6. illustration shows first two status cycle after command sequence, last status read cycle, and array data read cycle. figure 25. toggle bit timings (during embedded algorithms) note: the system may use ce# or oe# to toggle dq2 and dq6. dq2 toggles only when read at an address within an erase- suspended sector. figure 26. dq2 vs. dq6 for erase and erase suspend operations
70 am29bdd160g 1. the timings are similar to synchronous read timings and asynchronous data polling timings/toggle bit timing. 2. va = valid address. two read cycles are required to determine status. when the embedded algorithm operation is complete, the toggle bits will stop toggling. 3. rdy is active with data (a18 = 0 in the configuration register). when a18 = 1 in the configuration register, rdy is active one clock cycle before data. 4. data polling requires burst access time delay. figure 27. synchronous data polling timing/toggle bit timing * valid address for sector protect: a6 = 0, a1 = 1, a0 = 0. valid address for sector unprotect:a6 = 1, a1 = 1, a0 = 0. ** command for sector protect is 68h. command for sector unprotect is 60h. *** command for sector protect verify is 48h. command for sector unprotect verify is 40h. figure 28. sector protect/unprotect timing diagram
am29bdd160g 71 ac characteristics alternate ce# controlled erase/program operations note: 1. not 100% tested. 2. see the section for more information. parameter description all speed options unit jedec std. t avav t wc write cycle time (note 1) min 65 ns t avel t as address setup time min 0 ns t elax t ah address hold time min 45 ns t dveh t ds data setup time min 35 ns t ehdx t dh data hold time min 2 ns t oes output enable setup time min 0 ns t ghel t ghel read recovery time before write (oe# high to we# low) min 0 ns t wlel t ws we# setup time min 0 ns t ehwh t wh we# hold time min 0 ns t wadvs we# rising edge setup to adv# falling edge min 5 ns t wp we# width min 15 ns t wadvh we# falling edge after adv# falling edge min 0 ns t wcks we# rising edge setup to clk rising edge min 5 ns t eleh t cp ce# pulse width min 35 ns t ehel t cph ce# pulse width high min 30 ns t whwsh1 t whwh1 programming operation (note 2) ty p 9 s t whwh2 t whwh2 sector erase operation (note 2) ty p 0.5 sec.
72 am29bdd160g ac characteristics note: 1. pa = program address, pd = program data, dq7# = complement of the data written to the device, d out = data written to the device. 2. figure indicates the last two bus cycles of the command sequence. figure 29. alternate ce# controlled write operation timings
am29bdd160g 73 erase and programming performance notes: 1. typical program and erase times assume the following conditions: 25c, 2.5 v v cc , 1m cycles. additionally, programming typically assume checkerboard pattern. 2. under worst case conditions of 145c, v cc = 2.5 v, 100,000 cycles. 3. the typical chip programming time is considerably less than the maximum chip programming time listed. 4. in the pre-programming step of the embedded erase algorithm, all bytes are programmed to 00h before erasure. 5. system-level overhead is the time required to execute the two- or four-bus-cycle sequence for the program command. see tables 19 and 20 for further information on command definitions. 6. the device has a minimum erase and program cycle endurance of 1m cycles. 7. ppbs have a minimum program/erase cycle endurance of 100 cycles. latchup characteristics note: includes all pins except v cc . test conditions: v cc = 3.0 v, one pin at a time. pqfp and fortified bga pin capacitance note: 1. sampled, not 100% tested. 2. test conditions t a = 25c, f = 1.0 mhz. data retention parameter typ (no te 1) max (note 2) unit comments sector erase time 1.0 5 s excludes 00h programming prior to erasure (note 4) chip erase time 23 230 s double word program time 18 250 s excludes system level overhead (note 5) word (x16) program time 15 210 s accelerated double word program time 8 130 s accelerated chip program time 5 50 s chip program time (note 3) x16 10 100 x32 12 120 description min max input voltage with respect to vss on all pins except i/o pins (including a9, acc, and wp#) ?1.0 v 12.5 v input voltage with respect to vss on all i/o pins ?1.0 v v cc + 1.0 v vcc current ?100 ma +100 ma parameter symbol parameter description test setup typ max unit c in input capacitance v in = 0 6 7.5 pf c out output capacitance v out = 0 8.5 12 pf c in2 control pin capacitance v in = 0 7.5 9 pf parameter test conditions min unit minimum pattern data retention time 150c 10 years 125c 20 years
74 am29bdd160g physical dimensions pqr080-80-lead plastic quad flat package
am29bdd160g 75 physical dimensions laa 080-80-ball fortified ball grid array (13 x 11 mm)
76 am29bdd160g revision summary revision b (september 30, 2002) initial public release. revision b+1 (october 7, 2002) distinctive characteristics changed maximum power consumption on burst mode read, program/erase operations, and standby mode. burst mode read table changed t ces specification from 7, 8, and 9 ns to 4, 5, and 6 ns, respectively. dc characteristics table deleted i cc2 specification. changed i ccb oe# test condition from v ih to v il . added 1 mhz test condition to i cc1 ; changed oe# test condition from v ih to v il . changed i cc3 and i cc4 maximum values and added typical values. changed max - imum values for i cc5 , i cc7 , and i cc8 . added note 4 to table. ac characteristics erase and program operations table: replaced tbds for t ah and t wp with values. erase and programming performance table replaced tbds and existing typical and maximum values with new values. revision b+2 (october 14, 2002) distinctive characteristics, dc characteristics changed v cc cmos standby current to 30 ma max. absolute maximum ratings changed maximum rating for v cc to 3.0 v. revision b+3 (november 22, 2002) product selector guide added availability note. changed minimum initial clock delay and maximum ce# access time on 54d, 65d, 64c, and 65a speeds. changed maximum oe# access time on 65a and 90a speeds. ordering information added availability note. see table 8, burst initial access delay deleted definitions and settings columns and added initial burst access columns. figure 3 , initial burst delay control modified drawing: deleted arrows connecting ad- dress/data cycles. deleted setting call outs. changed number of delay cycles call outs. moved start of valid address cycle. falling clk edge output and two-clk data hold deleted figure. see table 9, configuration register definitions modified descriptions for cr3?cr10. see table 16, cfi device geometry definition modified description of data at address 2ch (x32 mode); added data 0003h. dc characteristics added maximum i cc6 specification. ac characteristics asynchronous read operations: changed t ce specifications for 54d, 65d, 64c, and 65a speed options. changed t df specifications for 65a and 90a speed options. revision b+4 (april 8, 2003) distinctive characteristics corrected typo in single power supply operation. corrected typo in performance characteristics. product selector guide updated max burst access delay for the 54d, 65d, 64c, and 80c speed options. global removed references to interleaving operations throughout data sheet. table 6. 16-bit and 32-bit linear and interleaved burst data order removed 2nd row for ?four interleaved data trans - fers? and ?eight interleaved data transfers?. continuous burst read operations, figure 3. and figure 4. wait function during continuous burst reads at wordline boundary, figure 5. and figure 6. odd/even starting address continuous burst mode alignment removed from data sheet. table 9. configuration register definitions added ?reserved? references to table. sector protection added sector and sector group section. added bulleted section. absolute maximum ratings and operating ranges added v io changed 1.65 v to ?0.5 v changed 2.3 v to 2.5 v cmos compatible removed ?v io ? from max column of output high voltage row. figure 16. burst mode read (x32 mode) corrected typos to subscripts. corrected values for the t bacc and t dind for the 54d, 65d, 64c, and 80c speed options.
am29bdd160g 77 figure 17. asynchronous command write timing added t wc and t wph. figure 18. synchronous command write/ read timing added t wc and t wph. hardware reset (reset#) corrected t ready max. figure 20. wp# write timing added t wp . figure 23. back-to-back cycle timings added t wph. figure 24. data# polling timings (during embedded algorithms) added t wc . figure 29. alternate ce# controlled write operation timings added t wp and t wph erase and programming performance changed the sector erase time typical to 1.0. revision b+5 (may 6, 2003) global converted data sheet from advanced information to preliminary. ordering information removed some opns and markings. automatic sleep mode (asm) and standby mode dq7: data# polling, dq6: toggle bit i and dq2: toggle bit ii added reference to figure 27. absolute maximum ratings added acc reference. cmos compatible corrected max values for the i cc5, 7, and 8 added note #5. figure 27. synchronous data polling timings/ toggle bit timing added figure. simultaneous read/write operations overview and restrictions added sections and table. table 7. burst initial access delay, table 8. configuration register definitions, table 23. test specifications, asynchronous read operations, and burst mode read removed the 65d, 80c, and 90a speed options from tables. revision c (may 19, 2003) no revisions made, re post on web. revision c+1 (may 29, 2003) distinctive characteristics changed the standby mode to 60 a. product selector guide changed the standard voltage range to 2.5-2.75 v output disable mode replace paragraph. synchronous (burst) read operation removed reference to ?continuous sequential? from section. figure 3. initial burst delay control renumbered waveform to read two, three, four. toggle bit i added sentence to second paragraph of section. cmos compatible removed reference to continuous burst from table. burst mode read changed the t iacc max for the 65a speed option to 67 ns. reworded first paragraph. renumbered supply current axis, removed 2.3 v graph, and changed other graph to 2.5 v. figure 27. synchronous data polling timing/ toggle bit timings deleted line under the pulse in oe#. revision c+2 (june 26, 2003) product selector guide added note. synchronous (burst) read operation, adv#control in linear mode, and ind/wait# operation in linear mode removed feature. table. 7 valid configuration register bit definition for ind/wait# removed features. table 20. sector protection command definitions (x32 mode) changed the address for ow a5-a0 to 011x10. table 22. sector protection command definitions (x16 mode) changed the pwa sector to a0:a-1 figure 11. typical i cc1 vs. frequency changed 2.5 to 2.7 and made t= 40c trademarks burst mode read changed t bacc for 54d to 9 fbga and 9.5 pqfp.
78 am29bdd160g changed t dind for 54d to 9 fbga and 9.5 pqfp and for the 64c to 10 fbga and 10 pqfp. figure 27. synchronous data polling timing/ toggle bit timing added note 4. revision d (june 30, 2003) global converted to a preliminary data sheet. revision d+1 (june 30, 2003) global removed ?preliminary? status from data sheet. distinctive characteristics added temperature range to simultaneous read/ write operations section. dc characteristics inserted i acc field to table. revision d2 (january 7, 2005) added note on cover page and first page of data sheet that the am29bdd160g has been superseded by the spansion s29cd016g. copyright ? 2003?2005 advanced micro devices, inc. all rights reserved. amd, the amd logo, and combinations thereof are registered trademarks of advanced micro devices, inc. expressflash is a trademark of advanced micro de - vices, inc. product names used in this publication are for identi - fication purposes only and may be trademarks of their respective companies. revision d3 (february 2, 2005) product ordering added lead free to package. added new package types to valid combinations. colophon the products described in this document are designed, developed and manufactured as contemplated for general use, including wit hout limitation, ordinary industrial use, general office use, personal use, and household use, but are not designed, developed and manufactured as contem plated (1) for any use that includes fatal risks or dangers that, unless extremely high safety is secured, could have a serious effect to the public, and could lead directly to death, personal injury, severe physical damage or other loss (i.e., nuclear reaction control in nuclear facility, aircraft flight control, air traffic control, mass transport control, medical life support system, missile launch control in weapon system), or (2) for any use where chance of failure is intolerable (i.e., submersible repeater and artificial satellite). please note that spansion llc will not be liable to you and/or any third party for any claims or damages arising in connection with above- mentioned uses of the products. any semiconductor devices have an inherent chance of failure. you must protect against injury, damage or loss from such failures by incorporating safety design measures into your facility and equipment such as redundancy, fire protection, and prev ention of over-current levels and other abnormal operating conditions. if any products described in this document represent goods or technologies subject to certain restrictions on ex - port under the foreign exchange and foreign trade law of japan , the us export administration regulations or the applicable laws of any other country, the prior authorization by the respective government entity will be required for export of those products. trademarks copyright ?2003-2005 advanced micro devices, inc. all rights reserved. amd, the amd logo, and combinations thereof are registered trademarks of advanced micro devices, inc. expressflash is a trademark of advanced micro devices, inc. product names used in this publication are for identification purposes only and may be trademarks of their respective companies .


▲Up To Search▲   

 
Price & Availability of AM29BDD160GT54DKI

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X